ばかばかしくてやる気も起きないけど、
そういうクラスがほしいのだったら、

CText, CImageの基底クラスを作ってそれを読み書きするんでないの?

class CFileImage;
class CText : public CFileImage {}
class CImage : public CFileImage {}

CFileImage* CFile::Load();

なぜばかばかしいかはじっくり考えてくれ