Форум программистов, компьютерный форум CyberForum.ru

Использование указателей при создании обьекта - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Удаление символа из строки http://www.cyberforum.ru/cpp-beginners/thread234798.html
Как удалить символ (скобку) в заданной символьной строке?
C++ First-chance exception at 0x772dd3c1 in wrhg_killer.exe: 0x40010005: Control-C У меня такая ситуация. Запускаю приложение из своей программы. Запущенное приложение работает до тех пор, пока пользователь из него не выйдет. В приложении прописан выход ctrl-c. Если просто закрывать приложение на крестик, то программа завершается корректно, а если по нажатию ctrl-c, то вываливается сообщение First-chance exception at 0x772dd3c1 in wrhg_killer.exe: 0x40010005: Control-C.... http://www.cyberforum.ru/cpp-beginners/thread234789.html
C++ Структура Student
Описать структуру с именем Student , содержащую следующие поля -фамилия -номер группы -успеваемость массив из 5 элементов написать программу ввод с клавиатеры данных в массив,состоящих из десяти структур типа Student; записи должны быть упорядочены по возрастанию среднего балла #include <iostream> using namespace std;
Массив C++
Помогите пожалуйста написать массив, который будет выводить все нечётные числа (1,3,5,7,9 и так далее).
C++ Не могу вытащить string из управляемого кода http://www.cyberforum.ru/cpp-beginners/thread234715.html
Здравствуйте! столкнулся с проблемой вытаскивания строки из c# в с++... есть код на c# namespace MyInterop { public interface IMyDotNetInterface2 { int Add(int Number1, int Number2);
C++ Загрузка dll: идентификатор не найден Глобальная задача: нужно сделать программу, работающую с т.н. LCard: ЦАП/АЦП, цепляющуюся на PCI. На сайте производителя есть дрова, в поставке которых идёт и dll: lcomp.dll с основными функциями работы. Я начал писать программу на Visual C++ в MVS 2010. Пробовал подключить библиотеку через "Добавить ссылку". Система говорит, что объект не является допустимой сборкой или компонентом COM.... подробнее

Показать сообщение отдельно
Nameless One
Эксперт С++
 Аватар для Nameless One
5754 / 3403 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
27.01.2011, 18:27     Использование указателей при создании обьекта
В Qt все классы унаследованы от одного базового. Если тебе знакомо понятие виртуальных функций, то тебе должен быть понятен и следующий аспект: если есть некоторый достаточно общий метод, реализованный в базовом классе, то он может быть вызван для любого класса-наследника по указателю на объект базового класса (причем будет вызвана именно реализация этого метода для конкретного класса-наследника). К примеру, метод begin класса QPainter принимает указатель на объект класса QPaintEngine, который содержит все необходимые функции для отображения действий класса QPainter ("The QPaintDevice class is the base class of objects that can be painted"). Именно поэтому мы можем одинаково рисовать на поверхности виджета с помощью класса QPainter, будь тот виджет хоть объектом класса QLabel, хоть QGLWidget, хоть определенным пользователем виджетом (если этот виджет косвенно унаследован от QPaintDevice, конечно). Это было бы невозможно сделать, если бы QDeviceEngine передавался по значению.
В Qt при вызове деструктора виджета автоматически вызывается деструктор для всех его "подчиненных" виджетов (например, класс автоматического размещения QLayout удалит все виджеты, которые он хранит). Это позволяеет разработчику не заморачиваться ручным удалением объектов, для которых динамически выделяется память, что избавляет от класса трудновыявляемых ошибок. Это (хранение в классах-контейнерах объектов разных типов, по указателю на базовый тип) было бы невозможно, если бы мы использовали сами объекты, а не указатели на них.
Ну и при передаче объекта по указателю, а не по значению, не приходится копировать весь объект, что для больших классов было бы слишком накладно.
 
Текущее время: 22:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru