Я создал класс, позвонил ему classA
. Я хочу создать в функции main()
случайное число объектов. Как я могу это сделать, именовать их по-другому? Я пробовал из отчаяния:
int a[100],i ,rnd;
srand ( time(NULL) );
rnd=(rand() %100);
for(i=0;i<=rnd;i++){
classa a[i];
}
но я знал, что это не сработает.
Используйте что-то вроде этого:
std::vector<a> v(rand() % 10000); // creates [0, 10000) objects
std::uniform_int_distribution
и std::mt19937
чтобы избежать смещения по модулю.
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<> dis(1, 6);
std::map<std::string, a> objects;
for (int i=0; i < dis(gen); ++i)
objects.insert(std::make_pair("obj_"+std::to_string(i), a()));