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; универсальное в общем