Я работаю над программой на C++ для учебного проекта, в котором я загружаю данные объекта из файла в список. Я настроил его таким образом, чтобы чтение данных выполнялось, как в функции-члене, а затем этот объект помещался в список и повторялся до тех пор, пока не осталось данных для загрузки.
Я получаю сообщение об ошибке:
Неопределенные символы для архитектуры x86_64:
"Product::Product(Product const&)", ссылка из:
станд.::__1::список ::push_back(Product const&) in Week-2.o
ld: не найдены символы для архитектуры x86_64
clang: ошибка: команда компоновщика завершилась неудачно с кодом выхода 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;
}
Я связал "Product.h" в моем файле main.cpp, а также . Есть предложения?