我有一個超類的幾個子類,想根據給定的字符串根據C++字符串創建一個對象
Superclass instantiateSubclass(string s);
而不是有一個巨大的,如果級聯我創建一個特定的類的實例想要使用配置文件來完成此操作。
這使我可以在不重新編譯的情況下更改字符串s的可能值,我希望它能夠生成更簡潔的代碼。
配置文件應該包含像「subclass1」,「subclass2」這樣的字符串,但是如何根據字符串創建類呢?
基本上我需要一個從字符串到類的映射,這可能在C++中嗎?我認爲其他語言爲這個問題提供了反思的可能性。
你要創建的對象,其類型(類名稱)字符串指定? – LihO
@ LihO:是的,確切地說 – marktani
沒有辦法在C++中不用重新編譯就添加子類。某處需要創建具體類的實例,編譯器需要查看它。或者你在說s.th.其他? –