Ich habe std::vector<Training> _classes;
in Training.h
als private Variable deklariert. Ich möchte zunächst _noOfClasses
vom Benutzer erhalten und dann initialisieren vector
mit, dass viele Elemente, aber ich erhalte eine Fehlermeldung:Wie kann man Benutzereingaben für die Größe eines Vektors akzeptieren?
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
}
Wie kann ich die Größe des vector
von Benutzereingabe initialisieren, getrennt ?
Randbemerkung: keine führende verwenden Unterstrichen bei der Benennung Ihrer eigene Symbole: _ "Jeder Name, der mit einem Unterstrich beginnt, ist für die Implementierung als Name im globalen Namespace reserviert." _ (C++ ISO-Standard, Abschnitt 17.6.4.3.2). – Michael
@Michael Member-Variablen sind nicht im globalen Namespace, das ist also in Ordnung. – Quentin
@Michael Und es wird nicht sofort von einem Großbuchstaben gefolgt, also wäre in Ordnung. – songyuanyao