|
0 / 0 / 0
Регистрация: 12.04.2009
Сообщений: 47
|
||||||||||||||||||||||||||
После объявления деструктора программа перестает выводить данные на экран17.04.2009, 15:53. Показов 1260. Ответов 9
Метки нет (Все метки)
Помогите, плиз!
Без деструктора программа работает (правда, компилятор возмущается, что их нет). После того, как я его добавляю, данные на экран больше не выводятся ![]() файл .hh
0
|
||||||||||||||||||||||||||
| 17.04.2009, 15:53 | |
|
Ответы с готовыми решениями:
9
После пробуждения из спящего режима программа перестает отправлять данные на сервер
Выводить данные на текстовый экран |
|
2924 / 1274 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
|
||||||
| 17.04.2009, 15:57 | ||||||
|
Тело деструктора в твоем случае должно быть пустым:
1
|
||||||
|
Технофашист
229 / 217 / 11
Регистрация: 11.03.2009
Сообщений: 887
|
|
| 17.04.2009, 16:08 | |
|
Явно объявлять деструктор нужно только для динамически-созданных данных (с помощью new, malloc). Память под статические данные (как в твоём примере) выделяется на этапе компилирования и очищается только после закрытия программы. Максимум ты можешь их занулить.
0
|
|
|
0 / 0 / 0
Регистрация: 12.04.2009
Сообщений: 47
|
||||||||||||||||
| 17.04.2009, 16:58 [ТС] | ||||||||||||||||
|
а теперь вот такая проблема:
добавляю объект класса Etudiant
файл .hh
cannot allocate an object of type Etudiant because the follow virtual function is abstract. Препод хочет, чтобы эта функция была абстрактной и не реализовывалась в классе Etudiant, а реализовывалась в его подклассах (в данном случае класс Eleve). Подскажите, плиз, что я делаю не так?
0
|
||||||||||||||||
|
Технофашист
229 / 217 / 11
Регистрация: 11.03.2009
Сообщений: 887
|
||||||
| 17.04.2009, 17:04 | ||||||
0
|
||||||
|
0 / 0 / 0
Регистрация: 12.04.2009
Сообщений: 47
|
|
| 17.04.2009, 17:16 [ТС] | |
|
а как тогда можно сделать?
Добавлено через 5 минут 4 секунды тоесть в таком случае нужно всегда создавать не объект класса Etudiant а объект его подкласса, где абстрактная функция уже реализована?
0
|
|
|
Maniac
|
|||||||||||
| 17.04.2009, 17:18 | |||||||||||
|
эту фун-ю
Вот пример
1
|
|||||||||||
|
0 / 0 / 0
Регистрация: 12.04.2009
Сообщений: 47
|
|
| 17.04.2009, 17:21 [ТС] | |
|
спасибо, хорошая идея
0
|
|
|
Технофашист
229 / 217 / 11
Регистрация: 11.03.2009
Сообщений: 887
|
|
| 17.04.2009, 17:23 | |
|
Абстрактные классы предназначенный для представления общих понятий и используются только в качестве БАЗОВЫХ классов.
Чисто виртуальный метод должен быть объявлен в твоём родительском - базовом классе, а не в производных. ПОнимаешь, ты создаёшь базовый класс. В нём должно уместиться всё то, что будет общим у производных классов (т.е. если класс дерево, то основные элементы это лист, ветка, ствол, корени. Эти есть эелементы будут у всех деревьев. А в производных классах ты уже реализуешь дополнительно комуто почки, комуто цветочки, комуто пух. Ну ведь ты же не будешь создавать объект ДЕРЕВО?! есть объект сосна, тополь, берёза, осина, но понятие дерево это не конкретное растение же ведь. парвильно? Так вот этот базовый класс ты и делаешь абстрактным (с чисто виртуальными методами), ибо обхекты его тебе не понадобяться. только потомки
1
|
|
|
0 / 0 / 0
Регистрация: 12.04.2009
Сообщений: 47
|
|
| 17.04.2009, 17:29 [ТС] | |
|
Спасибо, я уже поняла
![]() Видимо, это и была цель упражнения. Что-то уже как-то слишком вежливо получается, но еще раз спасибо всем за подробные объяснения и потраченное время
0
|
|
| 17.04.2009, 17:29 | |
|
Помогаю со студенческими работами здесь
10
После вызова рекурсивной функции программа перестаёт работать Программа перестает компилироваться после подключения библиотеки <Afx.h>
Как выводить на экран и вводить данные типа wchar_t[]? Программа перестает отвечать после сворачивания или перехода на другое окно Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|