1

質問が言うように、クラスのカスタム データ型データをおそらく C++ の ifstream を使用してファイルに書き込みたいと考えています。助けが必要。

4

1 に答える 1

7

任意のクラス、たとえば の場合、Pointこれを ostream に書き出すかなりクリーンな方法を次に示します。

#include <iostream>

class Point
{
public:
    Point(int x, int y) : x_(x), y_(y) { }

    std::ostream& write(std::ostream& os) const
    {
        return os << "[" << x_ << ", " << y << "]";
    }

private:
    int x_, y_;

};

std::ostream& operator<<(std::ostream& os, const Point& point)
{
    return point.write(os);
}

int main() {
    Point point(20, 30);
    std::cout << "point = " << point << "\n";
}
于 2010-05-02T09:11:36.007 に答える