C2440 error in VisualStudio 2019
-
Types kp:Input Field/Button/Timer* are not converted into ReturnClass*. What's wrong? I don't understand.
template <class ReturnClass> static ReturnClass* createObject(kp::ObjectType type) { switch (type) { case kp::ObjectType::InputField: return createInputField();
case kp::ObjectType::Button: return createButton(); case kp::ObjectType::Timer: return createTimer(); default: return nullptr; }
}
-
If the type is not known at the compilation stage, different types cannot be returned. Temples are powerless.
You can do that.
variant<TypeA*, TypeB*, void*> createObject(kp::ObjectType type)