__Cheat3r |
Отправлено: 11.01.2006, 23:34 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 110
|
Доброго времени суток.
Хочу создать класс, допустим MyString , да создать его так , чтобы его родителем был Делфи Класс AnsiString.
Хочетсья иметь свой тип данных , для удобства ...
Отредактировано __Cheat3r — 11/01/2006, 23:34 |
|
__Cheat3r |
Отправлено: 12.01.2006, 02:25 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 110
|
мда , тут как всегда никто ничего не знает ..
Задашь приличный вопрос , и одни просмтры в теме остаюцца.. |
|
Asher |
Отправлено: 12.01.2006, 09:59 |
|
Мастер участка
Группа: Модератор
Сообщений: 550
|
Привет.
QUOTE | мда , тут как всегда никто ничего не знает .. |
Знаешь, в это время многие спят.
AnsiString не предназначен для создания от него потомков.
|
|
GoodWin |
Отправлено: 12.01.2006, 10:02 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 50
|
Тут многие знают и отвечали мне на серьезные вопросы Просто никому не интересно отвечать на вопросы, который можно найти в Хелпе. И зачем тебе иммено дельфийский класс родителем нужен?? В С++ также объявлен класс AnsiString |
|
__Cheat3r |
Отправлено: 12.01.2006, 10:12 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 110
|
Извините , с GMT проблемы..
QUOTE | В С++ также объявлен класс AnsiString |
ну это все таки аналог Делфи-класса ...
т.е. я понял никак не сделаешь? |
|
GoodWin |
Отправлено: 12.01.2006, 11:12 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 50
|
C++ не дает возможность создания потомков от AnsiString(у меня во всяком случае не получалось). Поэтому можно воспользоваться двумя вариантами:
1) создание собственного класса подобного AnsiString.
2) Использование его как данных и использования его функций опосредованно,т.е
class TMyString
{
private:
AnsiString String;
protected:
public:
__fastcall TMyString() ;
__fastcall ~TMyString();
};
функции которые ты не изменяешь можно объявить как события(указатели на фукции AnsiString). А другие изменять на свой вкус
Рекомендую разработать лучше свой класс, он будет намного производительней.
|
|
Guest |
Отправлено: 12.01.2006, 12:51 |
|
Не зарегистрирован
|
Я может быть задал не правильно вопрос.. вот именно что я хочу. :
существует допустим функция(в одном из установленых мной компонентов):
CODE |
void __fastcall AddHotPictureTag(const AnsiString Name, Graphics::TGraphic* gr, int ParaNo, Rvstyle::TRVVAlign VAlign, int Tag);
|
TRVVAlign VAlign — представляет какой то тип данных.
в зависимости от значения , картинка помещается в определенное место.
а сам я хочу создать функцию:
CODE |
void AddNew(TRichView *rv,TMyClass Str)
{
rv->AddHotPicture("",Str);
//где Str название ресурса с картинкой.
}
|
АнсиСтринг юзать не хочу... Чтобы не подставлять левые параметры , а только разрешенные... |
|
__Cheat3r |
Отправлено: 12.01.2006, 13:12 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 110
|
ЗЫ
моя функция в качестве 2ого параметра требует AnsiString , вот по этому мне и нужен потомок АнсиСтринга..
rv->AddPicture |
|
Asher |
Отправлено: 12.01.2006, 13:16 |
|
Мастер участка
Группа: Модератор
Сообщений: 550
|
Привет.
QUOTE | АнсиСтринг юзать не хочу... Чтобы не подставлять левые параметры , а только разрешенные... |
а кто такие 'разрешенные'?
|
|
** __Cheat3r |
Отправлено: 12.01.2006, 22:55 |
|
Не зарегистрирован
|
Разрешенные — т.е. с моего класса... |
|
Георгий |
Отправлено: 12.01.2006, 23:01 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
маразм крепчал, сейсмографы зашкаливало
зачем это надо? и что это даст?
но если очень хочется — проверь какой класс тебе дали используя RTTI
Отредактировано Георгий — 13/01/2006, 00:02 |
|
olegenty |
Отправлено: 13.01.2006, 07:25 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
не, если хочется самописности, можешь занаследоваться от std::string
|
|