「結果ベクトル」がこのスコープで宣言されていないというエラーがあります。私はこれを宣言する場所や方法を確信していませんか?結果ベクターの意図は、ベクトルのX年代を加えた結果ショーで、Yの各ベクトルの、その後、あなたは変数を使用する前にように、あなたは、宣言それに持っている結果範囲C++エラー:スコープ内で宣言されていません。メンバー関数
#include <iostream>
#include <vector>
using namespace std;
class vector{
private:
double x;
double y;
public:
//Constructor - default
vector() : x(0), y(0) {}
//Constructor - Custom
vector(double xx, double yy) : x(xx), y(yy) {}
//Get X & Y Coordinates
double get_x() { return x;
}
double get_y() { return y;
}
//Set X & Y Coordinates
void set_x(double xx) { x = xx;
}
void set_y(double yy) { y = yy;
}
//Adding Vectors
vector add_vector(vector v1, vector v2){
result_vector.x = v1.x + v2.x;
result_vector.y = v1.y + v2.y;
return result_vector;
}
//Subtracting Vectorsed
vector subtract_vector(vector v1, vector v2){
result_vector.x = v1.x - v2.x;
result_vector.y = v1.y - v2.y;
return result_vector;
}
};
int main() {
//Default
vector test;
cout <<"Default \n" test.get_x().get_y() << "\n";
//Customer
vector test2(10, 12);
cout <<"Custom \n" test2.get_x().get_y() << "\n";
//Adding
vector add = vector.add_vector(vector test1&, vector test2&);
cout <<"Adding \n" add.get_x().get_y() <<"\n";
//Subtracting
vector sub = vector.subtract_vector(vector test1&, vector test2&);
cout <<"Subtracting \n" sub.get_x().get_y() <<"\n";
return 0;
}
を行った後、既存のクラスvector.vectorクラスと競合するため、また、あなたは
using namespace std;
を使用することはできませんベクトルのxとyはプライベートで、彼はそれらに直接アクセスしようとしています。 –@mock_blattクラスは同じ型であるため、別の変数であっても、クラスにアクセスできるため、これは問題ありません。 – Rakete1111
あなたは正しいです。彼の次の問題は、複数の関数呼び出しの間違った使用でしょうか? (私は間違ってその演算子連鎖と呼ばれる) –