1
有人可以解釋我,如何使私有類變量超載? 我試圖在超載使用指針,但也許我應該使用的ostream &操作者< <(ostream的&出來,B & b)或ostream的&操作者< <(ostream的&出來,常量乙& B)?不能讓超載運算符<<與包含的私有類
#include <iostream>
using namespace std;
class B {
const int x = 5;
public:
B(){}
~B(){}
int get_x() {
return this->x;
}
};
ostream& operator<<(ostream& out, B *b) {
return out << b->get_x();
}
class A {
B b;
public:
A(){}
~A() {}
B get_b() {
return this->b;
}
};
ostream& operator<<(ostream& out, A *a) {
return out;
}
int main(int argc, const char * argv[]) {
A *a = new A();
cout << a << '\n';
return 0;
}
_「但我也許應該使用&或const&???」 _後者。 –