From b319a33d0011d6079afb704c25e166900de597fc Mon Sep 17 00:00:00 2001 From: "HuYingzhuo(hugo/hyzboy)" Date: Fri, 21 Jul 2023 19:18:12 +0800 Subject: [PATCH] added PAttribTest.cpp --- CMakeLists.txt | 4 ++++ utils/PAttribTest.cpp | 53 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 utils/PAttribTest.cpp diff --git a/CMakeLists.txt b/CMakeLists.txt index 13f98c4..ca7a239 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -99,3 +99,7 @@ add_executable(AndroidDeviceAnalysis android/AndroidDeviceAnalysis/main.cpp android/AndroidDeviceAnalysis/LoadRecordFile.cpp) cm_example_project("android" AndroidDeviceAnalysis) +#################################################################################################### + +add_executable(PAttribTest utils/PAttribTest.cpp) +cm_example_project("utils" PAttribTest) \ No newline at end of file diff --git a/utils/PAttribTest.cpp b/utils/PAttribTest.cpp new file mode 100644 index 0000000..77b8af8 --- /dev/null +++ b/utils/PAttribTest.cpp @@ -0,0 +1,53 @@ +#include +#include +#include +#include + +using namespace hgl; +using namespace std; + +int main(int argc,char **argv) +{ + if(argc!=3) + { + std::cout<< "PAttribTest use format:\t[cmd] [filename]"< pl_set; + + // 属性名称 缺省值 最小值 最大值 小数位数 + //--------------------------------------------+-----------+---------------+--------+----------+------ + auto *name =pl_set.CreateStringAttrib( "name", "Anonymous"); + auto *sex =pl_set.CreateBoolAttrib( "sex", true); + auto *age =pl_set.CreateNumberAttrib( "age", 17, 1, 120); + auto *temp =pl_set.CreateFloatAttrib( "temp", 36.5, 35, 42, 2); + + const char cmd=argv[1][0]; + + if(cmd=='c'||cmd=='C') + { + SaveToTextFile(ToOSString(argv[2]),pl_set); + } + else + { + LoadFromTextFile(ToOSString(argv[2]),pl_set); + + //lambda方式 + pl_set.Enum([](const String &key,PAttribBase *attr) + { + std::cout<MakeToString().c_str()<MakeToString().c_str()<MakeToString().c_str()<MakeToString().c_str()<