にそれを設定する方法構文が含まれていない場合は、私にはデフォルトコンストラクタがクラスに存在しない「ベクター」エラーに私のベクトルがゼロ
main.cppに
#include <iostream>
#include <string>
#include "myVector.h"
using namespace std;
int main()
{
vector<int> myvecA;
cout << "Vector A size: " << myvecA.size() << endl;
system("Pause");
return 0;
}
を取得myVector.h
#include <iostream>
using namespace std;
template <class V>
class vector{
public:
vector(V x) {
bool(x = 0)
sizearr = 0;
if (x != 0)
return x;
sizearr = x;
}
V size();
private:
V sizearr;
};
template <class V>
V vector<V>::size() {
return sizearr;
}
私はそれを作る方法がわからない
よう
vector<int> myvecA;
場合
は、構造体を0に設定する構造体を含んでいないので、サイズを0に戻すことができます。
私の質問があまり明確でない場合はお詫び申し上げます。私はちょうど助けを探すので、私は学ぶことができます。私はC++があまりよくありません。
すでに 'std :: vector1'があります。 [不快な "using namespace std"(http://stackoverflow.com/questions/1452721/why-is-using-namespace-std-considered-bad-practice)の使用法]を使用し、独自の 'vector'を宣言するだけです物事を混乱させる。あなたは完全に忘れる必要があります "using namespace std;" C++に存在します。それは悪いプログラミングの練習です。 –
待って、自分の 'vector'クラスを宣言していて、デフォルトのコンストラクタを提供していないのですか?エラーメッセージには何が表示されますか?単純に 'std :: vector' BTWを使うのはなぜですか? –
'bool(x = 0)sizearr = 0;'は構文エラーです。あなたのコンパイラは何かを言う必要があります –