| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Создание класса |
| Автор: Proximo_RZN 5.12.2004, 16:46 |
| Такой текст: class TEasyAnswer { public: void SetAnswer(UCHAR Ans); void SetFormulation(TStrings Form); UCHAR GetAnswer(void); TStrings GetFormulation(void); private: UCHAR Answer; TStrings Formulation; }; При компиляции BCB5 говорит: [C++ Error] ANSWERS.HPP(24): E2352 Cannot create instance of abstract class 'TStrings' [C++ Error] ANSWERS.HPP(24): E2353 Class 'TStrings' is abstract because of '_fastcall TStrings::Get(int) = 0' [C++ Error] ANSWERS.HPP(24): E2459 VCL style classes must be constructed using operator new Как же тогда нужно создавать поле такого типа??? Добавлено @ 16:50 Сорри. Доперло в чем проблема.... Я просто сижу с температурой и бошка пухнет... 2 Admin: тему можно удалять. Мои извинения. |
| Автор: Vyacheslav 7.12.2004, 10:55 | ||
| Во-первых: TStrings - абстрактны й класс и его объекты создавать нельзя. Нужно использовать производные от него классы, например - TStringList Во-вторых: TStrings - производный от ТObject, т.е является VCL классом. А их экземрляры можно создавать только через new Вот так пройдет
|