C++ 常量指针引用
有关以下代码:C++ 常量指针引用,c++,C++,有关以下代码: class Foo { private: int var; int* var_ptr; public: Foo() : var_ptr(&var), var_ptr_ref(var_ptr) {} int*& var_ptr_ref; // Read only access to var and var_ptr }; 当通过var\u ptr\u ref访问时,是否可以使指针常数和实际变量常数保持不变?尝试将var\u p
class Foo {
private:
int var;
int* var_ptr;
public:
Foo() : var_ptr(&var), var_ptr_ref(var_ptr) {}
int*& var_ptr_ref; // Read only access to var and var_ptr
};
当通过
var\u ptr\u ref
访问时,是否可以使指针常数和实际变量常数保持不变?尝试将var\u ptr
声明为const int
和var\u ptr\u ref
声明为const int*const&
:
class Foo {
private:
int var;
const int * var_ptr;
public:
Foo() : var_ptr(&var), var_ptr_ref(var_ptr) {}
const int * const & var_ptr_ref;
};
将引用成员“var\u ptr\u ref”绑定到构造函数行的临时变量时出现错误
。@user1135541至少我的VS2015很乐意编译它。这是一个警告,使用clang。@user1135541 clang实际上可能是正确的。尝试更新的版本。