我打算在任何时候调用一个函数m_logger<<"hello"<<"world"
。m_logger 属于流类型。
所以我决定用以下签名重载 <<
friend ofstream& operator<<(ofstream &stream,char *str);
但是vc编译器给出以下错误:
错误 C2666:“运算符 <<”:6 个重载具有类似的转换
有没有其他方法可以实现这一点,我的目标是将所有写入操作转移到 ofstream 对象到不同的功能?
创建一个我自己的对象对我有用,但是我怎样才能让它像正常的 ofstream 对象一样工作,它将所有系统定义的类型转换为字符串或 char*。我知道一种方法是重载每种类型的运算符,但有没有更简洁的方法