gvg |
Отправлено: 07.01.2006, 23:34 |
|
Машинист паровоза
Группа: Участник
Сообщений: 222
|
Пардон, опять потропился. Бывает, праздники... В C (и C++) в case используются только константы (в отличие от Паскаля). При компиляции невозможно определить значение, которое определяется только в процессе работы программы. Ваше решение (глобальная переменная) будет работать, но это не очень согласуется с принципами ООП. Если вам не нужно знать значение указателя на компонент, на котором вызывалось меню, тогда можно присваивать тэгу какие либо целые значения. Например:
enum { tagPanel1, tagMemo1 };
и в case использовать их, а уже в зависимости от значения case определять компонент. |
|
kea |
Отправлено: 08.01.2006, 01:43 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 80
|
QUOTE (gvg @ 07/01/2006, 23:34) | Пардон, опять потропился. Бывает, праздники... В C Ваше решение (глобальная переменная) будет работать, но это не очень согласуется с принципами ООП. |
Здравствуйте! Согласен с вами насчет глобальных переменных. Стараюсь их использовать в крайнем случае. Ваш вариант с enum предпочтительнее. |
|
|