![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| -= Demon =- |
|
|||
|
Unregistered |
Как в С++ проверить, кокой тип у объекта (аналог 'is' и 'as' в Delphi)?
Напр. if Sender is TEdit then (Sender as TEdit).Text := 'hrjfhgj'; ................... |
|||
|
||||
| Baa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2639 Регистрация: 12.4.2002 Где: Москва Репутация: 8 Всего: 12 |
-------------------- "Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande |
|||
|
||||
| -= Demon =- |
|
|||
|
Unregistered |
> Baa
Хотелось бы увидеть более вразумительный ответ, а не набор "чего-то". Я не "сишник", но сейчас стоит задача сделать блок именно на С++. Поэтому прошу "пошагово" объяснить: 1) if Object is TEdit; 2) (Object as TEdit).Name := ..... |
|||
|
||||
| Fantasist |
|
|||
|
Лентяй ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1517 Регистрация: 24.3.2002 Репутация: 4 Всего: 41 |
Ничего типа is в С++ нет.
Типа as это dynamic_cast. Он правда одновременно и типа is. int fn(Object *obj) { Edit *ed=dynamic_cast<Edit*>(obj); .... }; Ecли оbj можно привести к типу Edit* - то он приведется. Иначе ed будет равно 0. -------------------- Волны гасят ветер... |
|||
|
||||
| neutrino |
|
|||
![]() Gothic soul ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3041 Регистрация: 25.3.2002 Где: Верхняя Галилея, Кармиэль Репутация: 1 Всего: 62 |
Эта тема есть в нашем FAQ: OnClick(Sender);
-------------------- The truth comes from within ... Покойся с миром, Vit |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |