|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
19.08.2011, 19:33 | #1 |
Пользователь
Регистрация: 08.08.2011
Сообщений: 39
|
Ругаеться на чисто виртуальную функцию
сообщает о ошибке в чисто виртуальной функции virtual long GetPerim()=0;
с соседней функцией virtual long GetArea()=0; все в порядке . при изменении GetPerium в не чисто виртуальную virtual long GetPerium(){return 0};, ошибка исчезает. никак не могу разобрать что с ней не так , ведь в принципе на аналогичную функцию GetArea() компилятор не ругается. Код:
Код:
|
19.08.2011, 19:44 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
вам компилятор прямо пишет что нельзя создавать объекты с абстрактными методами.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
19.08.2011, 19:44 | #3 |
C++, Java
Старожил
Регистрация: 10.04.2010
Сообщений: 2,665
|
Код:
|
19.08.2011, 19:55 | #4 | ||
Пользователь
Регистрация: 08.08.2011
Сообщений: 39
|
Цитата:
но почему он не ругается тогда на virtual long GetArea()=0;? чем принципиально отличается GetArea() и GetPerium() 0_o? Цитата:
да , со мной все в порядке . Аа, простите , кто сказал что так нельзя ? есть что то противозаконное ? Последний раз редактировалось Stilet; 19.08.2011 в 20:12. |
||
19.08.2011, 20:02 | #5 |
C++, Java
Старожил
Регистрация: 10.04.2010
Сообщений: 2,665
|
Тогда ставлю вопрос по-другому. На кой чёрт было определять функцию, если она чисто виртуальная(ведь можно было и в объявлении определить!)? Ну или зачем было определять её чисто вирутальной, если вы её определили? Это называется, вам делать нечего.
Код:
|
19.08.2011, 20:04 | #6 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
1)вы не внимательны, у вас в абстрактном классе GetPerim, а в круге уже какая то GetPerium.
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
19.08.2011, 20:08 | #7 | |
Пользователь
Регистрация: 08.08.2011
Сообщений: 39
|
Цитата:
в нее можно добавить некий функционал к примеру ) ну да вижуал .. есть какие то против ? почему нет ? |
|
19.08.2011, 20:09 | #8 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
19.08.2011, 20:12 | #9 | |
Пользователь
Регистрация: 08.08.2011
Сообщений: 39
|
Цитата:
первым делом я и перепроверил на себя на опечатки в этой функции ) видимо плохо перепроверил простите за невнимательность почему не имеет реализации? она прекрасно вызывается Shape::Draw() в данном коде никакого .было сделано ради эксперимента . ну а в принципе почему бы в другой программе не помещать в нее скажем код создания окна ? Последний раз редактировалось Stilet; 20.08.2011 в 08:11. |
|
19.08.2011, 20:20 | #10 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
только если ручками максимум. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
На getasynckeystate() ругаеться Касперский? | Дима я | Win Api | 9 | 19.08.2012 13:44 |
Функция на виртуальную распечатку строки | Alex Cones | Общие вопросы Delphi | 5 | 15.05.2010 15:33 |
Ругаеться антивирусник | Volkogriz | Общие вопросы Delphi | 4 | 20.01.2010 23:06 |
помогите с кодом а то компилятор ругаеться =( | Above_men | Помощь студентам | 9 | 21.04.2009 07:21 |
маска ввода через виртуальную клавиатуру | Димка | JavaScript, Ajax | 3 | 09.03.2009 19:33 |