【发布时间】:2018-04-07 23:18:08
【问题描述】:
我正在为一个类项目开发一个 C++ 程序,我正在将对象数据从文件加载到列表中。我已经设置好了,所以数据读取就像在成员函数中一样完成,然后将该对象推送到列表中,然后重复,直到没有更多数据要加载。
我收到此错误:
架构 x86_64 的未定义符号:
“Product::Product(Product const&)”,引用自:
std::__1::list ::push_back(Product const&) 在 Week-2.o
ld:未找到架构 x86_64 的符号
clang: error: 链接器命令失败,退出代码为 1(使用 -v 查看调用)
主要功能:
Product temp;
list <Product> allProducts;
if (!temp.loadInitalData())
{
cout << "There is no Product data available. Try a different option: ";
cin >> choice;
repeat = true;
}
else {
while (temp.loadInitalData())
{
allProducts.push_back(temp); //This is where I'm getting the error
}
temp.viewMenu();
repeat = false;
}
产品的 loadInitalData() 函数:
bool Product::loadInitalData()
{
bool moreData = true;
fstream prodDatabase;
prodDatabase.open("ProductDatabase.csv", ios::out|ios::in|ios::binary);
if (!prodDatabase)
{
cout << "File could not be successfully opened\n";
moreData = false;
}
else
{
moreData = loadInitialItemData(prodDatabase);
}
return moreData;
}
我在 main.cpp 文件中链接了“Product.h”,以及 .有什么建议吗?
【问题讨论】:
标签: c++ class reference linker-errors