![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
maxfox111 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 9.11.2008 Репутация: нет Всего: нет |
Добрый день, (или вечер)
не мог бы кто нибудь помочь разобраться с ошибкой с темплейтами в пространстве Warning567 объявлено несколько классов. Меня интересует объект ow567, как я понимаю он наследует свойства и функции класса oddwO_t и класса ow567_t. Мне необходимо в своем коде реализовать функцию "set" для этого объекта, что бы отлавливать вызовы приведенные ниже и работать с параметрами.
ПОПЫТКА реализации Делаю так:
1)если пишу "void set( uint8_t p, uint32_t d =1, uint8_t s =1 )" то мингв просто игнорирует вызов этой функции. Это понятно. 2)если пишу "void ow567_t::set( uint8_t p, uint32_t d =1, uint8_t s =1 )" то мингв ругается member function declared in class 'Warning567::ow567_t'. Это вроде бы все понятно, так как "set" наследуется от oddwO_t. 3)если пишу "void oddwO_t::set( uint8_t p, uint32_t d =1, uint8_t s =1 )" то мингв требует темплайт параметры для вызова. Но вот здесь я начинаю плавать, Так как вроде бы я указываю то все верно, что еще надо? НЕ мог бы кто нибудь объяснить как правильно объявлять функции у подобных объектов? (инклюды и сишники,где это все объявлено, модифицировать не могу) |
||||
|
|||||
xvr |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 35 Всего: 223 |
В том виде, как у вас это написанно вы никак set не переопределите. Он не виртуальный и с телом, т.ч. перегрузить его не получится.
Определение тела функции set вне класса будет выглядить так -
Максимум можно попытаться сделать частичную специализацию на конкретное значение O (например 42):
![]() |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |