我有一个简单的结构
struct Test {
std::vector<int> values;
int value;
}
重载&lt;&lt;操作
inline std::ostream& operator<<(std::ostream& p, const Test& t)
{
p << "test: ";
for(size_t i = 0; i < t.values.size(); i++) {
std::cout << t.values[i] << " ";
}
p << " value: " << t.value << std::endl;
return p;
}
当我使用默认输出时,这工作正常。但是当我使用我的提升记录时,显示在这里Different boost log sinks for every class,它会在我的控制台内打印值,其余的打印在我的文件中。任何人都知道那里会发生什么?
答案 0 :(得分:4)
std::cout << t.values[i] << " ";
应该是
p << t.values[i] << " ";