argparse 3.0

C++ (C++17 ဒေသိယစကား) ၏ ဗားရှင်း 3.0 ၏ ခေါင်းစီး-သာမန်-အမိန့်ပေးစာကြောင်း အငြင်းအခုံ ခွဲခြမ်းစိတ်ဖြာသည့် စာကြည့်တိုက်ကို ထုတ်ပြန်လိုက်ပါပြီ။ arparseMIT လိုင်စင်အောက်တွင် ဖြန့်ဝေထားသည်။

ဘာထူးသလဲ:

  • သီးသန့် ငြင်းခုံမှုများ အတွက် ပံ့ပိုးမှု ပေါင်းထည့်ထားသည်-

အလိုအလျောက် &group = program.add_mutually_exclusive_group(); group.add_argument("—first"); group.add_argument("—ဒုတိယ");

  • C++20 မော်ဂျူးကို ထည့်သွင်းထားသည်။
  • တန်ဖိုးများစွာမှ ရွေးချယ်ခြင်းအတွက် ထပ်လောင်းပံ့ပိုးမှု-

program.add_argument("input") .default_value(std::string{"baz"}).choices("foo", "bar", "baz"); program.add_argument("count") .default_value(0) .choices(0၊ 1၊ 2၊ 3၊ 4၊ 5);

  • binary notation အတွက် ပံ့ပိုးမှု ပေါင်းထည့်ထားသော ဥပမာ၊ 0b101-

argparse::ArgumentParser program("test"); program.add_argument("-n").စကင်န်<'b', uint8_t>();

  • subcommand parser ကိုလက်ခံသော is_subcommand_used ၏ overloaded ဗားရှင်းကို ပေါင်းထည့်ခဲ့သည်။
  • exit_on_default_arguments parameter ကို ArgumentParser သို့ ပေါင်းထည့်လိုက်ပါပြီ။
  • --help command output မှ subcommands များကို ဝှက်ထားရန် ပံ့ပိုးမှု ထပ်ထည့်သည်-

argparse::ArgumentParser program("test"); argparse::ArgumentParser hidden_cmd("hidden"); hidden_cmd.add_argument("files").remaining(); hidden_cmd.set_suppress(true); program.add_subparser(hidden_cmd);

  • ArgumentParser တွင် ခွဲခြမ်းစိတ်ဖြာထားသော တန်ဖိုးများ ရှိနေခြင်းအတွက် စစ်ဆေးရန် စွမ်းရည်ကို ပေါင်းထည့်ထားသည်။
  • အငြင်းအခုံများအတွက် လိုင်းပေါင်းစုံအကူအညီအတွက် ကော်လံချိန်ညှိမှုကို ပေါင်းထည့်ထားသည်။
  • ချို့ယွင်းချက်များစွာကို ပြုပြင်ပြီးပါပြီ။

source: linux.org.ru

DDoS ကာကွယ်ရေး၊ VPS VDS ဆာဗာများပါသည့် ဆိုက်များအတွက် ယုံကြည်စိတ်ချရသော hosting ကို ဝယ်ယူပါ။ 🔥 DDoS ကာကွယ်မှု၊ VPS VDS ဆာဗာများပါရှိသော ယုံကြည်စိတ်ချရသော ဝဘ်ဆိုက် hosting ကို ဝယ်ယူပါ | ProHoster