-1
我無法打印列表對象的實際內容。當我使用std :: cout < < myList;我得到一個編譯器錯誤說錯誤:'操作符< <'(操作數類型是'std :: ostream {aka std :: basic_ostream}'和'List')不匹配C++問題COUT只在內存中打印位置?
當我使用std: :cout < <&myList;但它只打印內存中的位置。以下是我的主要文件。我也包括我定義
//main.cpp
#include <iostream>
#include "list.h"
#include "loadfile.h"
#include "book.h"
int main(int argc, const char * argv[]) {
List myList;
load_book_data("test_subset.tsv", myList);
List & myI = myList;
std::cout<<myList;
return 0;
}
// operator overloading, this is from a book.cpp
std::ostream& operator<<(std::ostream & os, const Book & b)
{
os<<b.isbn()<<'\t'<<b.title()<<'\t'<<b.author()<<'\t'<<b.year()<<'\t'<<b.rating();
return os;
}
您是否爲'List'定義了'operator <<'? – NathanOliver
你在哪裏告訴計算機如何打印「List」? –
給你一些東西給谷歌,「操作符重載」 – UKMonkey