gpt4 book ai didi

c++ - cin/ofstream 的不同输出格式

转载 作者:行者123 更新时间:2023-11-28 02:02:32 25 4
gpt4 key购买 nike

简介及相关信息:

假设我有以下类(class):

class Example
{
int m_a;
int m_b;
public:
// usual stuff, omitted for brevity
friend ostream & operator<< (ostream & os, const Example &e)
{
return os << m_a << m_b;
}
};

问题:

我想保留 cin 的默认行为,但在写入 ofstream 时采用以下格式:

m_a , m_b

我为解决这个问题所做的努力:

我试过在这里搜索,但没有找到任何类似的问题。

我尝试过在线搜索,但仍然没有找到任何有用的信息。

我已经尝试添加

friend ofstream & operator<< (ofstream & ofs, const Example &e)
{
return ofs << m_a << ',' << m_b;
}

进入类,但产生了编译器错误。老实说,这种方法感觉不对,但我不得不尝试一下,然后才来这里寻求帮助。

最佳答案

当链接运算符时,所有标准 <<将返回 ostream&引用。

然后是你的return ...将不起作用,因为该值与 ofstream& 不匹配返回类型。

只需使用 ostream&在您的用户定义中 operator<< ,它应该可以工作。

关于c++ - cin/ofstream 的不同输出格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38855359/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com