Форум программистов, компьютерный форум CyberForum.ru

Специализация шаблонного класа - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Управляющие Операторы: Составить таблицу стоимости порции сыра http://www.cyberforum.ru/cpp/thread271519.html
Составить таблицу стоимости порции сыра верно 50,100,150,...,1000 г(цена 1кг-30руб.) заранее благодарю
C++ Вычисление суммы Здравствуйте многоуважаемые специалисты. Вынужден прибегнуть к вашей помощи! Программирование на С++, и ооочень прошу - блок схему опишите))) Ситуация в следующем: Вычислить сумму: (вложенный документ). Огромнейшее спасибо!) http://www.cyberforum.ru/cpp/thread271451.html
Книга по C++, которую нельзя найти в интернете C++
мой друг поехал в москву , хочу его попрасить купить мне там книгу по с++ только такую,которую можно найти только на продаже т.е. каторая не имеет доступа на скачивание в инете.кто знает,посоветуйте буду очень благодарен.
Записи C++
А. Описать запись с именем AEROFLOT, содержащую следующие поля: -Название пункта рейса -Номер рейса -Тип самолёта Ввести с клавиатуры данные о 10 рейсах, записи упорядочит по возростанию номера рейса. Б. Написать программу, выполняющую следующие действия: -Вывод на экран номера рейсов и типов самолетов, вылетающих в пункт назначения, название которого совпало с названием, введённым с...
C++ Наследование в С++. http://www.cyberforum.ru/cpp/thread271177.html
Создать класс CFile, инкапсулирующий в себе такие функции работы с файлами, как Open, Close, Seek, Read, Write, GetPosition и GetLength. На базе этого класса создать производный класс CMyDataFile – файл, содержащий в себе данные некоторого определенного типа MyData, а также заголовок, облегчающий доступ к этому файлу. Написать программу, демонстрирующую работу с этим классом. Программа должна...
C++ не выходит настроить С++ 2008 Установил студию 2008 экспресс эдишин, создаю виндовс приложение. Вначале жаловалсь что нет библиотеки msvcr90d. Нашел ее кинул в систем32 и теперь выдает такое: подробнее

Показать сообщение отдельно
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16932 / 5337 / 328
Регистрация: 30.03.2009
Сообщений: 14,339
Записей в блоге: 26
07.04.2011, 15:29     Специализация шаблонного класа
Цитата Сообщение от sergio1 Посмотреть сообщение
Каким образом можно написать специализацию шаблонного класса так, чтобы часть методов являлась специализированной, то есть писалась заново, а остальные методы - такие, какими бы они были если бы шаблонный клас был без специализации.
Всё можно и без геморроев. Специализацию нужно описывать для метода, а не для класса

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <stdio.h>
 
template <class T>
class C
{
  public:
    void M1 (void) { printf ("template M1\n"); }
    void M2 (void) { printf ("template M2\n"); }
};
 
template <>
void C<int>::M2 (void)
{
  printf ("specialized M2\n");
}
 
int
main (void)
{
  C<char> c1;
  C<int> c2;
 
  c1.M1();
  c1.M2();
 
  c2.M1();
  c2.M2();
 
  return 0;
}
Выдаёт на исполнении

Код
template M1
template M2
template M1
specialized M2
 
Текущее время: 20:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru