Are*_*ski -5 c++ string heap pointers vector
我试图从文件到向量获得大约3百万个字符串.我像这样分配了它
vector<string> *slownikds = new vector<string>;
Run Code Online (Sandbox Code Playgroud)
当我尝试从这样的文件中推回时:
string *line;
while (getline(slownik, *line))
{
*slownikds->push_back(*line);
}
Run Code Online (Sandbox Code Playgroud)
它不起作用.如何从文件"slownik"中推回字符串?
请停止这个.
std::vector已创建,因此您不必自己为容器分配内存.std::string是这样你不必使用char *或使用固定大小的缓冲区.
请修理:
std::vector<string> slownikds;
std::string line;
while (getline(slownik, line)) {
slownikds.push_back(line);
}
Run Code Online (Sandbox Code Playgroud)
您收到"错误"的原因可能是以下三种情况之一:
*line,所以它指向未初始化的内存或可能NULLpush_back通过指针成员访问运算符访问成员函数无论如何,不是像我上面那样使用指针就是答案