std::vector<Training> _classes;
をTraining.h
にプライベート変数として宣言しました。私は最初のユーザーから_noOfClasses
を取得し、その多くの要素でvector
を初期化したいが、私はエラーを取得しています:ベクターのサイズに対するユーザー入力を受け入れる方法は?
call of an object of a class type without appropriate operator() or conversion functions to pointer-to-function type
Training::Training() : _noOfClasses(0) {
std::cout << "Enter the number of class\n";
std::cin >> _noOfClasses;
_classes(_noOfClasses); //Error
}
私は別に、ユーザの入力からvector
のサイズを初期化するにはどうすればよいです?
サイドノート:あなたの名前を付けるときに先頭のアンダースコアを使いません_ _ "アンダースコアで始まる各名前は、 グローバル名前空間の名前として使用するための実装に予約されています。" _(C++ ISO標準、セクション17.6.4.3.2)。 – Michael
@Michaelメンバー変数はグローバル名前空間にはありませんので、問題ありません。 – Quentin
@Michaelそして大文字ですぐには続いていないので、大丈夫でしょう。 – songyuanyao