C++C++

C++——引用

2018-12-16  本文已影响1人  d16ug_a1l

使用&符进行引用,引用的作用是为变量取一个别名,使用别名既是变量。

int a = 10;

int&b = a;

b = 20;

std::cout << "\n" << a << "\n" << std::endl;

引用可以作为函数的返回值,作用是直接可以对返回值进行赋值。

int c= 10;

int & test_a()

{

return c;

}

int main()

{

test_a() = 40;

std::cout << "\n" << c << "\n" << std::endl;

}

引用还可以为常引用 ,常引用通过定义时的constl来将普通引用变为常引用,常引用的意思为,不可以通过该引用来修改变量的值。

int main()

{

int j = 10;

const int &i = j;

std::cout << "\n" << i << "\n" << std::endl;

//i = 10;编译不通过

}

非常引用可以初始化常引用。

int main()

{

int a = 10;

int &b = a;

const int &c = b;

std::cout << "\n" << b << "\t" << c << "\n" << std::endl;

}

常引用不能初始化非常引用。

int main()

{

int a = 10;

const int &b = a;

//int &c = b将限定符会丢失

//std::cout << "\n" << b << "\t" << c << "\n" << std::endl;

//编译错误

}

函数的形参使用const进行限定可以防止函数修改数据。

void test_a(const char *chuan)

{

//strcpy(chuan, "hehe");  防止函数修改内容

printf("%s", chuan);

}

int main()

{

test_a("这是一条测试语句");

}

不可以通过常引用来修改引用的内容。

int main()

{

int a = 10;

const int &b = a;

b = 20;//编译错误

}

上一篇下一篇

猜你喜欢

热点阅读