Выборка из перечислений на 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)) { ... } |