2015-09-28 79 views
2

为什么我不能将unordered_map结构写入文件?Unordered_map到二进制文件

std::ostream& operator<<(std::ostream& stream, PassLibrary const& data){ 
    stream << data.local_login << " " //std::string 
      << data.local_pass << " " //std::string 
      << data.libs;    //std::unordered_map - error 
    return stream; 
} 

此致敬礼。

+2

因为'operator <<(std :: ostream&,std :: unordered_map const&)'没有重载。你必须自己写。 – Barry

回答

4

编译器不知道如何将unordered_map打印到文件。这取决于你做到了。 由于@Barry说你可以定义函数operator<<(std::ostream&, std::unordered_map<K, T, H, KE, A> const&)以告诉编译器如何去做。也许你还想要构造它如何从文件加载它。

+2

不知道你,但我的编译器是一个女孩。 –