Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.16;
Скачать: CL | DM;

Вниз

Как перевести оператор in из Delphi в С++?   Найти похожие ветки 

 
Strumpf   (2002-09-05 16:48) [0]

Как, например, перевести на C++ строки:

if biSystemMenu in BorderIcons then ...

if BorderStyle in [bsSizeable,bsSingle] then ...

Я понимаю, что вопрос несколько не в тему, но все-же, помогите бедному чайнику...


 
Виктор Щербаков ©   (2002-09-05 16:49) [1]

В стандартном С++ нет встроенных множеств, по-этому in непереводим.


 
Игорь Шевченко ©   (2002-09-05 16:50) [2]

Битовые операции вам помогут.


 
Strumpf   (2002-09-05 16:51) [3]

Тогда каков выход? Чем все это можно заменить?


 
Strumpf   (2002-09-05 16:53) [4]

> Игорь Шевченко © (05.09.02 16:50)
Если можно, подробнее. Я же написал - чайник...


 
Виктор Щербаков ©   (2002-09-05 16:53) [5]

Strumpf (05.09.02 16:51)
В BCB есть класс - аналог паскалевских множеств. Посмотри, в хэлпе должно быть про это.


 
Игорь Шевченко ©   (2002-09-05 18:18) [6]

#define biSystemMenu 0x01
#define bsSizeable 0x01
#define bsSingle 0x02
// Значения взяты просто так...

if biSystemMenu in BorderIcons then ...

if (BorderIcons & biSystemMenu) {
...
}

if BorderStyle in [bsSizeable,bsSingle] then ...

if (BorderStyle & (bsSizeable | bsSinble)) {
...
}


Примерно так.

С уважением,




 
Suntechnic ©   (2002-09-05 18:31) [7]

Да не надо изврашениями заниматься. В C++ Builder для этих целей используется шаблонный класс Set:
if biSystemMenu in BorderIcons then ...

if (BorderIcons.Contains(biSystemMenu))
{
...
}



 
Strumpf   (2002-09-05 19:23) [8]

Всем боооольшое спасибо!



Страницы: 1 вся ветка

Текущий архив: 2002.09.16;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.019 c
6-50897
valery_f
2002-07-11 13:41
2002.09.16
E-mail овский HTML


3-50626
Ник
2002-08-26 17:38
2002.09.16
ftGraphic


14-50951
pkm
2002-08-20 21:18
2002.09.16
Сеть!!!


4-51038
hovl
2002-07-26 20:30
2002.09.16
Резидент


1-50764
Tuzemec
2002-09-04 17:21
2002.09.16
Между модулями