Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Шаблон класса в другом классе

35K
03 мая 2009 года
Gviber
3 / / 16.03.2008
Код:
class BMPFile
{
   public:

      BMPMASTempl<RGBTRIPLE>     *MasTEMP;
      BMPMASTempl<unsigned char> *MasTEMP2;

      void open(AnsiString  path);
};
void BMPFile::open(AnsiString path)
{
   ifs.open(path.c_str(),ios_base::in | ios_base::binary);
   ifs.seekg(0);
   ifs.read((char*)&Head, sizeof(BMPFILEHEADER));
   ifs.read((char*)&INFO, sizeof(BMPINFOHEADER));

   switch (INFO.biBitCount)
   {
      case 8:
         MasTEMP2 = new BMPMASTempl<unsigned char>(INFO.biWidth,INFO.biHeight);
         ifs.read((char*)MasTEMP2->oneDem,MasTEMP2->SizeMas);
      break;
      case 24:
         MasTEMP = new BMPMASTempl<RGBTRIPLE>(INFO.biWidth,INFO.biHeight);
         ifs.read((char*)MasTEMP->oneDem,MasTEMP->SizeMas);
      break;
   };
   ifs.close();

}

MasTEMP2 и MasTEMP очень похожи, мне нужно чтобы в самом классе было не:
BMPMASTempl<RGBTRIPLE> *MasTEMP;
BMPMASTempl<unsigned char> *MasTEMP2;
А что ни будь на подобии template class BMPMASTempl<T> *MasTEMP; универсальное в общем
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог