从文本文件数据创建对象。没有可行的重载"="错误
creating objects from text file data. no viable overloaded '=' error
我基本上是在尝试对文件中的字符串进行标记,并使用标记作为对象的参数创建对象。
我需要能够为文件中的每一行创建一个新对象。
但是我得到错误no viable overloaded '='
string tokens[8];
int i =0;
int j=0;
vector<Package *> myPack[5];
while (file.good()){
getline(file,buffer);
cout<< buffer<< endl;
string token, text(buffer);
istringstream iss(text);
cout <<endl;
while (getline(iss, token, '|')){
cout << token << endl;
tokens[i]=token;
i++;
}
myPack[0] = new Package(tokens[0] ,tokens[1],tokens[2],tokens[3], stod(tokens[4]), stod(tokens[5]));
j++;
}
这里出现错误
myPack[0] = new Package(tokens[0] ,tokens[1],tokens[2],tokens[3], stod(tokens[4]), stod(tokens[5]));
vector<Package *> myPack[5];
是包含5个(空)向量的数组,而不是包含5个Package*
元素的向量。
后者看起来像vector<Package *> myPack(5);
您的myPack
向量的长度为0,因此myPack[0]
(访问向量中的第一个元素)是错误的。
你必须push_back
你的包对象插入它
相关文章:
- 数组索引重载错误
- C++:需要帮助了解运算符重载错误
- 模板流运算符重载错误:引用初始化无效,与basic_istream和basic_ifstream之间的差异有关
- 运算符重载错误无匹配运算符<<
- 即使我重载了分配,也没有可行的重载'='错误
- 查找运算符重载C++错误
- 运算符重载错误"no match for operator error"
- 简单3x3矩阵类的运算符重载错误
- 运算符重载错误C++
- 运算符重载错误
- C++运算符">>"重载错误
- 如何使 g++ 运算符重载错误更简洁
- 运算符重载">>"错误
- C++中的重载错误[按值传递和按引用传递]
- 模板的 MSVC 重载错误,但不是 g++
- 运算符+运算符重载错误不匹配
- 函数指针重载错误
- 赋值运算符重载 -- 错误 C2440:'==':无法从 'A<T> *' 转换为 'A<T> *const '
- 引用计数器实现,= 运算符重载错误
- C++运算符重载错误