"C++编程语言第4版"中的一些示例代码让我感到困惑.这是我的测试用例.
Env gcc版本4.6.3(Debian 4.6.3-14 + rpi1),其中-std = c ++ 0x
string var {"Cambridge"}; string& r1 {var}; 编译失败string var {"Cambridge"}; string& r1 = var; 编译成功string var {"Cambridge"}; string&& r1 {var}; 编译成功g++ -g -DLINUX -std=c++0x -c src/dummy.cpp -o src/dummy.o
src/dummy.cpp: In function ‘int main(int, char**)’:
src/dummy.cpp:26:17: error: invalid initialization of non-const reference of type ‘std::string& {aka std::basic_string<char>&}’ from an rvalue of type ‘<brace-enclosed initializer list>’
make: *** [src/dummy.o] Error 1