У меня есть вектор C++. Я хочу, чтобы вектор содержал переменное количество объектов.Как создать объекты при добавлении их в вектор?
Visual Studio 2012 дает мне ошибку:
Error: type name is not allowed
С этой C++ код:
#include <iostream>
#include <vector>
using namespace std;
class testObject{
private:
int someInt;
public:
testObject(int a){ someInt=a; }
void show() { cout<<someInt<<endl; }
};
int main()
{
vector<testObject> testVector;
cout << "Initial size: " << testVector.size() <<endl;
for (int i = 0; i < 3; i++)
testVector.push_back(testObject(3));
cout << "New size: " << testVector.size() << endl;
for (int j = 0; j < 3; j++)
testVector[ j ].show();
system("pause");
}
Но вот еще один пример кода, который выглядит так же, но это не работает.
void Dealer::setNumberOfPlayers(const int tNumber)
{
for (int i = 0; i < tNumber; i++)
vectorOfGamers.push_back(Player); // Player is a class that I created
}
Могу ли я создать вектор для хранения объектов Дилера, Бот и Игрока одновременно? Как мне это сделать? Как я знаю, все объекты в векторе должны быть одного типа.
+1 для корректного вопроса (ваш английский неплох). – Cameron
Создайте экземпляр игрока. – Arun
Дублируйте, однако, ответы на оба этих вопроса можно найти легко через google или даже здесь, на SO. –