我不知道这里有什么问题。C++从stringstream中检索const char *
std::stringstream ss("Title");
ss << " (" << 100 << ")";
const char* window_title = &ss.str().c_str();
我跑make
,它并不高兴。
[17%] Building CXX object CMakeFiles/game.dir/src/main.cpp.o
path: error: cannot take the address of an rvalue of type 'const value_type *'
(aka 'const char *')
const char* window_title = &ss.str().c_str();
^~~~~~~~~~~~~~~~~
1 error generated.
make[2]: *** [CMakeFiles/game.dir/src/main.cpp.o] Error 1
make[1]: *** [CMakeFiles/game.dir/all] Error 2
make: *** [all] Error 2
据我了解,我创建字“标题”一个stringstream
,然后追加“(100)”来了。在此之后,我检索一个字符串,然后是一个“C字符串”,它是一个char
并将指针存储在window_title
中。
怎么了?
不要垃圾邮件标签! C不是C++不是C! – Olaf
你不需要把地址'ss.str().c_str();''已经返回'const char *'。 –
呃,为什么我得到10k的降价?我解释了这个问题,不是吗? – Lolums