使用&符进行引用,引用的作用是为变量取一个别名,使用别名既是变量。
int a = 10; int&b = a; b = 20; std::cout << "\n" << a << "\n" << std::endl; 引用可以作为函数的返回值,作用是直接可以对返回值进行赋值。 intc= 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;//编译错误 }
作者:2024不是大大
链接:https://www.jianshu.com/p/88eeac5d06ed