は、私は次のコードを持っている: (単なる例)オーバーロードされた代入演算子のコードが実行されるかどうかを知る方法?
Sales_item s;
Sales_item s1 = s;
しかしLine 1
は実行されませんでした。そして、
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
}
};
を、私でした。オーバーロードされた割り当て内のコードをどのように「見る」ことができますか?たとえば、複雑なコードがあり、デバッグしたいと思いますか?私は1行目にブレークポイントを設定しようとしましたが、プログラムはそのブレークポイントにジャンプしませんでした。
なぜLine 2
は*this
を返しますか?私はvoid
に変更しようとしており、同じ結果を得ました。違いは何ですか?