Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] одноименные методы в классе

Ответить
Настройки темы
C/C++ - [решено] одноименные методы в классе

Аватара для Glareone

Старожил


Сообщения: 281
Благодарности: 46


Конфигурация

Профиль | Отправить PM | Цитировать


Изменения
Автор: Drongo
Дата: 19-06-2010
Описание: тег код - #
Доброго времени суток.
Есть необходимость объявить в классе несколько методов Add с разными аргументами. Можно ли так сделать?Не нарушается ли полиморфизм?
PS Про виртуальные методы знаю,но в моей задаче виртуальным его объявить не получится.

Код: Выделить весь код
class Seq:public Prototype
{
 char *p;
 int t;
//....................
public:
 Prototype* clone() const {return new Seq (this);
 void Add(const Any&); //Any тоже потомок от Prototype
 void Add(char *p);
//............................................
}

-------
Имеющий глаза,да узрит, Имеющий уши,да внемлет.


Отправлено: 14:41, 19-06-2010

 

Аватара для Glareone

Старожил


Сообщения: 281
Благодарности: 46

Профиль | Отправить PM | Цитировать


Да.Такое возможно. Компилятор сам определяет,какой метод(или функцию) требуется вызвать по фактически вводимым аргументам. Называется это Разрешением перегрузки(или мнемоникой перегрузки).

PS Обидно, что об этом умалчивается и в Википедии и многих книгах по программированию, где в пример ставится лишь перегрузка операций и ни слова не упоминается о одноименных методах или функциях в одной области видимости.

-------
Имеющий глаза,да узрит, Имеющий уши,да внемлет.

Это сообщение посчитали полезным следующие участники:

Отправлено: 09:14, 20-06-2010 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] одноименные методы в классе

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
C/C++ - [решено] Теоретический вопрос в задаче о классе целых чисел Sky-er Программирование и базы данных 4 08-01-2009 04:18
Прочее - размножение Linux в классе с предустановленными Win (win Нужно сохранить) mar Общий по Linux 16 02-03-2008 00:22
методы, сборки и прочее.... ptt Программирование и базы данных 2 17-09-2004 08:27
Создание формы в классе Guest Программирование и базы данных 1 01-03-2004 15:53




 
Переход