Как создать представителя класса, если мы изначально не знаем, сколько будет представителей? Допустим, в программе я считываю некоторые данные с файла. И при определенных условиях, мне надо занести в класс некоторый набор данных. (для примера, будем считать, что при объявлении функции, я должен занести в класс тип возвр. значение, имя функции, тип и порядок параметров).
Но, я не знаю, сколько таких объявлений может быть. Может быть как 2-3, так и 100-1000.
Каким образом сделать так, чтобы при объявлении создавался экземпляр класса. ?
Пока писал, на ум пришло сделать динамический массив классов, и после обнаружения нужного мне триггера, создавать просто новый элемент массива.
Или есть более простой и лаконичный вариант?
Заранее спасибо!

21 Авг 2019 в 07:01
230 +1
0
Ответы
1

Да, создание динамического массива объектов класса является одним из способов решения данной проблемы. Когда вы считываете данные из файла и обнаруживаете необходимые условия для создания экземпляра класса, вы можете выделить память под новый объект и добавить его в массив.

Вот простой пример на C++:

#include <iostream>
#include <vector>
class Function {
public:
std::string returnType;
std::string functionName;
std::string parameters;
};
int main() {
std::vector<Function> functions; // создание динамического массива объектов класса Function
// считывание данных из файла и проверка условий
// когда необходимо создать новый объект Function, делаем следующее:
Function newFunction;
newFunction.returnType = "int";
newFunction.functionName = "sum";
newFunction.parameters = "int a, int b";
functions.push_back(newFunction); // добавление нового объекта в массив
for (Function& function : functions) {
std::cout << "Function: " << function.returnType << " " << function.functionName << "(" << function.parameters << ")" << std::endl;
}
return 0;
}

Таким образом, вы можете динамически создавать и хранить объекты вашего класса с неизвестным заранее количеством представителей. Этот подход позволяет эффективно управлять памятью и обрабатывать переменное количество данных.

20 Апр 2024 в 13:09
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир