次のコードがあります。
class Sales_item {
public:
int ii;
Sales_item& operator=(const Sales_item &item)
{
cout << "Inside assignment\n"; // Line 1
ii = item.ii;
return *this; // Line 2
}
};
次に、私はしました:(ほんの一例)
Sales_item s;
Sales_item s1 = s;
しかし、Line 1
実行しませんでした。オーバーロードされた割り当て内のコードを「見て」実行するにはどうすればよいですか? たとえば、複雑なコードがあり、デバッグしたいですか? 行 1 にブレークポイントを設定しようとしましたが、プログラムはそのブレークポイントにジャンプしませんでした。
なぜLine 2
返品するの*this
ですか?に変更しようとしましvoid
たが、同じ結果が得られました。違いは何ですか?