У меня есть библиотека, которую im использует для загрузки изображений. Библиотека делает объекты класса из файлов и имеет собственные функции рисования. Я пытаюсь создать класс, который может обрабатывать эти объекты и реализовать некоторую простую логику после выполнения загрузки файлов. Что было бы хорошим способом передать их в качестве ссылки или указателя на мой класс обработки?Передача переменной количества объектов в качестве ссылки на класс
Это то, что я получил до сих пор:
1) Передача их в качестве ссылки по одному. Когда я добавляю файл, мне всегда нужно будет записать новый файл в мое определение класса.
2) Загрузка всех объектов в массив и передача их в качестве ссылки. Мне еще нужно установить класс defition, чтобы я знал, сколько элементов в массиве. Но что, если у меня есть разные файлы с размерами для загрузки на разных этапах моей программы? Написание многих перегрузок конструктора/функции не похоже на правильный способ сделать это.
Я искал выходные и не нашел никаких решений для этого, поэтому любые вопросы и советы будут приветствоваться. О, и я довольно новичок в C++, поэтому считаю, что мои знания ограничены. Я могу понять идею о том, что указатели и ссылки, но что-то происходит с ними, медленны.
Чтобы повторить мой вопрос. Что было бы хорошим способом передать переменное количество объектов в качестве ссылки или указателя на мой класс обработки?
Читайте на 'std :: vector'. В первом приближении это похоже на массив, но он намного более гибкий и, естественно, справляется с тем, что не зная, сколько элементов вам нужно начинать, он может динамически расти. – us2012
Возможно, вектор или список? Кто отвечает за выделение объектов? Создаете ли вы объект и переходите в библиотеку для заполнения, или библиотека создает и заполняет объект и возвращает его? –
кажется std :: вектор работает хорошо, не определяя количество данных, которое будет в определении класса =) спасибо, остальная часть недели сохранена! – John