由买买提看人间百态

topics

全部话题 - 话题: strpvet
(共0页)
s****m
发帖数: 76
1
来自主题: JobHunting版 - 关于c++ new 的用法
在关于输入一个string指针的vector的程序中,下面是可以运行的:
vector strpvet;
string str;
while(cin>>str)
{
string *strpt= new string;
(*strpt)=str;
strpvet.push_back(strpt);
}
但如果换成下面程序段,调试时输入第一个string之后就错误了,说这个源文件stop
working,输不进去第二个string了。这是为什么?new的作用什么动态分配,这怎么理
解呢?
vector strpvet;
string str;
while(cin>>str)
{
string *strpt;
(*strpt)=str;
strpvet.push_back(strpt);
}
(共0页)