Implementing Reflection Using the New C++20 Tooling Opportunity: Modules
} }; Implement Field3 9 templateTField> class FieldImpl : public Field { public: using PtrToMember = TField TObject::*; // Data PtrToMember ptr_to_member; // Functions static_cast (object); TField* field_ptr = &(typed_object->*ptr_to_member); return AnyRef{ field_ptr, field_type }; } }; Implement Field4 0 template TField> class FieldImpl : : public Field { public: using PtrToMember = TField TObject::*; // Data PtrToMember ptr_to_member; std::string field_name; Type* field_type; // Functions std::string_view name() override { return field_name; 0 码力 | 53 页 | 1.43 MB | 5 月前3
共 1 条
- 1