Обратен оператор на typeid ?
5 отговора
214 прегледа
Обратен оператор на typeid ?
Трябва да пазя низове (като char*) с имена на разни класове и после по тези имена да конструирам обекти от съответния клас. Има ли начин стринга да бъде преобразуван до име на клас по време на изпълнение на С++ ?
Re: Обратен оператор на typeid ?
Краткият отговор е "Не".
Дългият е "Възможно е", но не е лесно. Ще трябва или да използваш готова reflection библиотека за C++ (има такива, но всички са сложни и тежки), или сам да си направиш нещо подобно. При всички положения обаче, вграденото RTTI на C++ не е достатъчно, трябва или да надстройваш върху него, или да си напишеш собствено RTTI, както например е направено в MFC.
Дългият е "Възможно е", но не е лесно. Ще трябва или да използваш готова reflection библиотека за C++ (има такива, но всички са сложни и тежки), или сам да си направиш нещо подобно. При всички положения обаче, вграденото RTTI на C++ не е достатъчно, трябва или да надстройваш върху него, или да си напишеш собствено RTTI, както например е направено в MFC.
Re: Обратен оператор на typeid ?
P.S. Разбира се, в някои по-прости случаи е достатъчно да си направиш едно class factory на което да подаваш името на класа, от който би желал нова инстанция.
Re: Щото
ATL/COM? natowari? coda?!
ami shtom kazwash :)
PS. az si mislia che chistia COM moje samo malko da ti natowari src, koeto se izbiagwa s ATL
PPS. da ne bi kat chuesh COM awtomatichno da go swyrzwash s MFC? :)
ami shtom kazwash :)
PS. az si mislia che chistia COM moje samo malko da ti natowari src, koeto se izbiagwa s ATL
PPS. da ne bi kat chuesh COM awtomatichno da go swyrzwash s MFC? :)