12、引用作为函数参数声明时不进行初始化
13、const引用 在C++中可以声明const引用 const Type& name = var; const引用让变量拥有只读属性 当使用常量对const引用进行初始化时,C++编译器会为常量值分配空间,并将引用名作为这段空间的别名 const int& b = 1; int *p = (int *)&b; *p = 5;使用常量对const引用初始化后将生成一个只读变量
14、引用有自己的存储空间,32位机是4个字节,64位机是8个字节 引用在C++中的内部现实是一个常指针 Type& name == Type* const name C++编译器在编译过程中使用常指针作为引用的内部实现,因此引用所占的空间大小与指针相同 从使用的角度,引用会让人误会其只是一个别名,没有自己的存储空间。这是C++为了实用性而 做出的细节隐蔽。 void f(int& a) { a = 5; } void f(int * const a) { *a = 5; }15、当函数返回值为引用时 (1)若返回栈变量 不能成为其他引用的初始值 不能作为左值使用 (2)若返回静态变量或全局变量 可以成为其他引用的初始值既可作为右值使用,也可作为左值使用
16、C++中引用的本质是一个指针常量新闻热点
疑难解答
图片精选