OK.
Dakle neka je dialog npr dijalog za proracun i prikaz rezultata nekakvih objekata.
Objekti su slicni i koriste zajednicke template f-je koje se staraju da urade obradu kako treba (gde je bilo potrebno uradjena je specijalizacija). Rezultat je da npr:
template <typename T>
void ProracunajNesto(T element) {...}
radi kako treba za ProracunajNesto<klasa1> i za ProracunajNesto<klasa2> ..itd.
Najintuitivnije bi bilo da u trenutku kad se kreira dijalog i kad znam za koj tip objekta je pozvan pozovem:
CMyDialog<klasa1> dlg; dlg.DoModal(); ali ovo ne moze zbog MFC makroa vezanih za CDialog.
Sledece sam probao sa Loki typelist-ama TYPELIST_n<klasa1,klasa2...>
i to radi ok ako ti treba instanca preko konstantnog indexa
ProracunajNesto<TYPELIST.TypeAt(1)>
(sintaksa za indexirani pristup je malo drugacija ali to je ideja...)
medjutim nece raditi sa promenljivim tipa
CMyDialog.n_indexTipaZaKojiJePozvanOvajDijalog
Izguglao sam neke varijante sa pravljenjem svog BEGIN_MESSAGE_MAP makroa
(
http://www.codeguru.com/cpp/cp...c/templates/article.php/c4099/ ) ali to mi nesto ne mirise...
Any idea?