Выборка из перечислений на C++ |
|
Добавил(а) microsin
|
В языке C++ нередко применяют перечисления. Например, в функциях StringReplace (применяется перечисление в параметре TReplaceFlags Flags) и MessageDlg (в параметре TMsgDlgButtons Buttons):
enum Sysutils__93 { rfReplaceAll, rfIgnoreCase };
typedef Set< Sysutils__93, rfReplaceAll, rfIgnoreCase > TReplaceFlags;
extern PACKAGE AnsiString __fastcall StringReplace(const AnsiString S,
const AnsiString OldPattern,
const AnsiString NewPattern,
TReplaceFlags Flags);
typedef Set< TMsgDlgBtn, mbYes, mbHelp > TMsgDlgButtons;
extern PACKAGE int __fastcall MessageDlg(const AnsiString Msg,
TMsgDlgType DlgType,
TMsgDlgButtons Buttons,
int HelpCtx);
Применять перечисление в вызове функции следует так (примеры не всегда есть в подсказке):
... = StringReplace(tmp, " ", "0", TReplaceFlags() << rfReplaceAll);
и так:
if (mrYes == MessageDlg("Удалить маску?",
mtConfirmation,
TMsgDlgButtons() << mbYes << mbNo, 0))
{
...
}
|