NX 1.0.3
niu2x's base c++ helper library
载入中...
搜索中...
未找到
项目概览

basic type

basic interface

Time Utils

Examples

TimePoint before = time_now();
// do something
TimePoint after = time_now();
TimeDuration duration = time_diff(before, after);

Math Utils

File System

Command Line Parser

int main(int argc, const char* const argv[])
{
nx::cmd::CmdParserBuilder args_1;
args_1.add_argument("age", nx::cmd::ArgumentType::INT);
args_1.set_handler([](const nx::cmd::CmdParser* args_1) {
int age = args_1->get<int>("age");
std::cout << "age: " << age << std::endl;
return 0;
});
auto cmd_a = args_1.build();
nx::cmd::CmdParserBuilder args_2;
args_2.add_argument("num", nx::cmd::ArgumentType::INT);
args_2.set_handler([](const nx::cmd::CmdParser* args_2) {
int num = args_2->get<int>("num");
std::cout << "num: " << num << std::endl;
return 0;
});
auto cmd_b = args_2.build();
auto group_cmd = std::make_unique<nx::cmd::GroupCmd>();
group_cmd->add_sub_command(
"a", std::make_unique<nx::cmd::SingleCmd>(std::move(cmd_a)));
group_cmd->add_sub_command(
"b", std::make_unique<nx::cmd::SingleCmd>(std::move(cmd_b)));
nx::cmd::GroupCmd group_cmd_a;
group_cmd_a.add_sub_command("test", std::move(group_cmd));
return group_cmd_a.handle_cmd(argc, argv);
}