私はC++を使用しています。使用親オペレータへの呼び出し<< C++
ostream & operator<<(std::ostream & os, const Worker & obj)
{
return os << "First Name: " << obj.GetFirstName() << ", Last Name: " << obj.GetLastName() << " ,ID: " << obj.GetID() << ", WorkPlace: " << obj._workPlace << endl;
}
:
は、私は次のように< <をopeator上書きしようとしている(Hファイル):
friend ostream& operator<<(std::ostream& os, const Worker& obj);
CPP
Person *w2 = new Worker("First Name", "Last Name", "123456789", "String");
cout << w2;
しかし、オペレータ< <呼び出されません。
間違いは何ですか?
ありがとうございます。
'cout << * w2;'が必要です。 – songyuanyao
'Person'ではなく' Person * 'を指定します。 –
ポインタと 'new'を避けてください。 –