我知道这很简陋但我对C++一无所知.有必要这样做:
string *str = getNextRequest();
Run Code Online (Sandbox Code Playgroud)
而不是
string str = getNextRequest();
Run Code Online (Sandbox Code Playgroud)
为了在稍后的同一代码块中引用str?如果是这样,后者会产生什么类型的错误?
ssu*_*ube 10
这完全取决于返回类型getNextRequest.
字符串可以在它们声明的范围内使用和重用.它们基本上包含一个可变的C字符串和一些处理信息,辅助方法等.
您可以非常安全地从函数返回一个字符串,编译器将根据需要复制或移动它.str然后可以正常使用该字符串(此处),而无需担心使用范围外的本地等.
有时需要指向字符串的指针,但除非你将它用作out参数,否则这些指针很少见并且表明某些设计有些奇怪.