什么时候匿名的C ++对象被破坏了?

时间:2011-05-03 05:57:30

标签: c++ variables scope

  

可能重复:
  Lifetime of temporaries

我假设std::string::c_str()返回指向某些内部(std::string)数据的指针。如果不是,假装这是真的。在下文中,name设置为指向此内部数据。 std::string返回的GetString()何时被销毁,导致名称无效?

#include <string>
#include <stdio.h>
using namespace std;

string GetString() {return string("TheString");}

int main(int argc, const char* argv[])
{
    const char* name = GetString().c_str();
    printf("name = %s\n",name);
}
// Should print "name = TheString"

0 个答案:

没有答案