オーバーローディングの部分の理解がしっかりできていません。(const CVector& param) 引数は変更不可能なCVectorクラスのパラムアドレス?
アドレス演算子の前に型をおいたってことですよね?
頭がこんがらがってきました、どうオーバーローディングが機能しているか丁寧に説明していただけるとありがたいです。
よろしくお願いします
コード #include <iostream> using namespace std; class CVector { public: int x,y; CVector () {}; CVector (int a,int b) : x(a), y(b) {} CVector operator + (const CVector&); }; CVector CVector::operator+ (const CVector& param) { CVector temp; temp.x = x + param.x; temp.y = y + param.y; return temp; } int main () { CVector foo (3,1); CVector bar (1,2); CVector result; result = foo + bar; cout << result.x << ',' << result.y << '\n'; return 0; }
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/11/08 09:00
2015/11/08 13:15