C/C++
Програмированиен с++ обьект класса что это
Кто может скинуть статью где написано что такое обьект класса только я имею виду не то что он хранит индивидуальные методы и свойства класса а имено как он устроен так сказать его внутрености как он вообще работает надеюсь понятно обьяснил
Внутренности объекта - всего лишь структура, содержащая несколько автоматически создаваемых и скрытых от программиста полей.
Метод - функция, которой при вызове неявно передаётся скрытый параметр this. Можно считать, что в процессе компиляции вызов a.b(c) преобразуется в b(a, c).
Внутри методов компилятор автоматически подставляет this - если он опущен при обращении к полям объекта.
Виртуальные методы - скрытое поле в структуре, содержащее таблицу указателей на функции-методы и при обращении к виртуальному методу сначала производится выборка указателя из таблицы, а потом собственно вызов по адресу в этом указателе.
Т.е. для вызова a.b(c) виртуального метода b получим - упрощённо: a._table_[7](a, b).
Метод - функция, которой при вызове неявно передаётся скрытый параметр this. Можно считать, что в процессе компиляции вызов a.b(c) преобразуется в b(a, c).
Внутри методов компилятор автоматически подставляет this - если он опущен при обращении к полям объекта.
Виртуальные методы - скрытое поле в структуре, содержащее таблицу указателей на функции-методы и при обращении к виртуальному методу сначала производится выборка указателя из таблицы, а потом собственно вызов по адресу в этом указателе.
Т.е. для вызова a.b(c) виртуального метода b получим - упрощённо: a._table_[7](a, b).
Грубо говоря это виртуальный объект, к которому можно обратится, чтобы он выполнил свой кусок кода или предоставил данные. В общем-то всё. Состоит из полей (переменных с данными) и методов (кусков кода). Выделяем ему память, даём имя чтобы обращаться, и готово. Он просто сидит в памяти пока его не позовёшь.
забей на это дело болт. я тоже увлекался программированием и даже работал как "инженер-программист" (писал сайты), но так и не смог своей башкой понять принципы ООП. просто не укладывается в голове, что это вообще такое.
Bakyt Moldobaev
Писать сайты и программировать - разные темы
Bakyt Moldobaev
Скуль не программирование, пыха не является языком с ооп составляющей, насколько я помнб
Объект класса в C++ - это экземпляр класса, созданный в памяти во время выполнения программы. Он представляет собой конкретный экземпляр, который имеет доступ к свойствам и методам, определенным в классе.
Когда вы создаете объект класса, вы резервируете память для хранения его свойств и методов. Объект содержит все свойства, определенные в классе, и может использовать все методы, определенные в классе.
Каждый объект класса имеет свое собственное состояние, которое определяется значениями его свойств. Вы можете изменять состояние объекта, вызывая методы класса, которые изменяют значения свойств объекта.
Для создания объекта класса в C++ используется оператор new, например:
Эта строка кода создает новый объект класса с именем obj, который является экземпляром класса ClassName.
Для доступа к свойствам и методам объекта класса используется оператор точки, например:
Эти строки кода обращаются к свойству объекта с именем propertyName и методу объекта с именем methodName.
Более подробную информацию о том, как работают объекты классов в C++, вы можете найти в официальной документации C++, например, на сайте cppreference.com .
Когда вы создаете объект класса, вы резервируете память для хранения его свойств и методов. Объект содержит все свойства, определенные в классе, и может использовать все методы, определенные в классе.
Каждый объект класса имеет свое собственное состояние, которое определяется значениями его свойств. Вы можете изменять состояние объекта, вызывая методы класса, которые изменяют значения свойств объекта.
Для создания объекта класса в C++ используется оператор new, например:
ClassName* obj = new ClassName();
Эта строка кода создает новый объект класса с именем obj, который является экземпляром класса ClassName.
Для доступа к свойствам и методам объекта класса используется оператор точки, например:
obj.propertyName;
obj.methodName();
Эти строки кода обращаются к свойству объекта с именем propertyName и методу объекта с именем methodName.
Более подробную информацию о том, как работают объекты классов в C++, вы можете найти в официальной документации C++, например, на сайте cppreference.com .
Похожие вопросы
- C++ Сравнение на равенство обьектов класса P.
- Как Создать иерархическую систему классов, на примере этого задания? Второй день уже туплю, помогите пожалуйста... С++
- Класс Poll и класс Variant (тема инкапсуляция) C++
- Лёгкое задание с классами C++
- Передача в метод класса указателя на функцию C++
- Как в C++ продолжить классы разные сгруппировано в файлах .h и .cpp, при этом не переопределяя классы эти?
- Функцию или оператор надо сделать для класса? Cи++
- В смысле С не поддерживает классы а как же библиотеки ?
- Создать простой класс, конструктор, и несколько функций. Не могу решить задачу, плохо понял тему, помогите пожалуйста.
- Описать независимые классы и определить их методы.