Здравствуйте, господа эксперты! Объясните популярно, что такое мультиметоды и как они применяются на практике. Желательно с самого начала и по порядку. Можно выслать доки или ссылку по этой теме.
Приветствую Вас, Мatrixman! Если я не ошибаюсь, мультиметод это переопределенный метод базового класса, адаптированный для своей реализации в множестве дочерних. Да прибудет с тобой Велика Сила! Ответ отправлен: 11.06.2003, 13:45 Отправитель: BOLT Отвечает DiGiT[old]
Доброе время суток, Мatrixman! Определение нашел в инете: Достаточно часто возникают ситуации, когда гомоморфные иерархии, определяемые как иерархии классов с одинаковым открытым интерфейсом, унаследованным от общего базового класса , взаимодействуют через функцию, виртуальную к произвольному числу полиморфных параметров. Такая функция называется мультиметодом. PS кстати само слово говорит о себе(то есть множество релизаций одного метода...)
Приложение: Ответ отправлен: 11.06.2003, 06:14 Отправитель: DiGiT[old]
Вопрос № 847
Здравствуйте, уважаемые эксперты. Извините за глупый вопрос. Подскажите пожалуйта функцию C++ при помощи которой можно из кода символа (ASCII) получить сам символ и обратную ей (по типу функций Chr и Ord в паскале). Спасибо.
Добрый день, Sledge! У машины нет понятия символа.Она знает только цифры.В C/C++ чтобы получить код символа, можно вывести его, интерпритировав как число(ведь символ это и есть число). так ролучаешь символ из числа: printf("%c", 97);
а так число из символа: char c='a'; printf("%d", c);
Второй способ это явное приведение типов, характерный только для C++, но не для C: char c='a'; cout << (int)c;
Да прибудет с тобой Велика Сила! Ответ отправлен: 11.06.2003, 13:45 Отправитель: BOLT Отвечает Vdr
Добрый день, Sledge! Функцию не знаю, а вот как сделать - подскажу. См. приложение. Вся суть в том, что типы переменных (целочисленные) различаются только кол-вом байт выделяемых для переменной... Если i будет больше 255(один байт), то в s перенесется по модулю... Удачи!
Приложение: Ответ отправлен: 11.06.2003, 10:11 Отправитель: Vdr Отвечает Hayk
Доброе время суток, Sledge! Оператор приведения типов и делает ето. В C/С++ ты сам решаешь как рассматривать значение переменной. Тебе будет всё ясно если я приведу пример... int i = 65 ; cout << i << endl ; // выведет 65 cout << (char)i << endl ; // выведет A Ответ отправлен: 11.06.2003, 11:17 Отправитель: Hayk Отвечает Ramzes
Ответ отправлен: 11.06.2003, 11:11 Отправитель: Ramzes Отвечает Dzik
Приветствую Вас, Sledge! никакой функции нет! код это и есть символ! если же тебе надо выводить код символа испоьзуй преобразование к int Ответ отправлен: 11.06.2003, 06:06 Отправитель: Dzik Отвечает Knignick
Здравствуйте, Sledge! Если у тебя переменная типа char, то в ней хранится значение ASCII кода символа. При выводе на экран эта переменная будет "интерпретироваться" как символ, если же будешь использовать ее в каких либо вычислениях, то она будет использоваться как целое число со знаком -128..127 Ответ отправлен: 11.06.2003, 08:02 Отправитель: Knignick
Форма отправки вопроса
Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+
или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.