c++ utility libraries
string utilities
generic object type any utilities over boost:any
functional programming utilities
lazy initialization template
simple logger for c++
meta object and reflection system for c++
class CMetaExample { V_META(CMetaExample, vstd::meta::empty, V_PROPERTY(CMetaExample, std::string, text, getText, setText)) public: CMetaExample() = default; std::string getText() { return text; } void setText(std::string text) { CMetaExample::text = text; } private: std::string text; }; void vmeta_example() { auto example = std::make_shared(); CMetaExample::static_meta()->set_property("text", example, "exampleText"); vstd::logger::info("Direct access:", example->getText()); vstd::logger::info("Meta access:", CMetaExample::static_meta()->get_property("text", example)); }