Способы создания обьектов класса С++

227
23 декабря 2017, 05:55

Сколькими способами можно создать обьект класса на С++ в ООП?

Answer 1

Есть четыре вида длительности хранения памяти под объект (storage duration), и соответственно четыре способа создать объект:

  • статическая, static T variable(expression),
  • потока, thread_local T variable(expression),
  • автоматическая, T variable(expression),
  • динамическая, new T(expression).
Answer 2

Экземпляр класса (объект) можно создать, выделив ему кусочек памяти, в котором поместятся значения его полей. А вот где будет этот кусочек памяти - зависит от вас.

Так что ответ:

Технически - одним, выделяется память, инициализируются поля, вызывается конструктор (если таковой имеется)

Но тем не менее, объект может находиться как на куче, так и на стеке.

Может будет полезно: https://stackoverflow.com/questions/12248703/creating-an-instance-of-class

READ ALSO
DirectX9, освещение текстурированной модели

DirectX9, освещение текстурированной модели

Все делаю по технологии: создаю буфер вершин, задаю координаты вершин, координаты текстуры, нормалиБез освещения модель отрисовывается идеально

211
Поиск по содержимому файлов (С/C++ Linux)

Поиск по содержимому файлов (С/C++ Linux)

Задание следующее - В указанной директории найти обычные файлы, которые содержат одинаковые (по информации) строкиВывести: имя файла, права...

247
CMake не может найти заголовочный файл

CMake не может найти заголовочный файл

Используем для проекта GMPПри сборке проекта CMake выкидывает мне следующее:

222
сдвиг элементов массива

сдвиг элементов массива

Задача следующая: есть пиктограммы отображающие определенный процесс на экране (5 пиктограмм):

181