Tak uz vim, proc sem pred lety prestal na
root.cz psat :-D Neco uspesne odeslat je casove narocnejsi, nez napsat odpoved, sbohem jeste jednou.
- Zadané jméno nejde použít, protože obsahuje rezervované jméno
- Jméno které jste chtěl použít bylo moc dlouhé.
- Jaké zvíře se nachází ve slovním spojení ,,zrnko zelí"?:
- Doplňte název velkého lidového povstání (r.vol..e)...:
----
Ahoj, chapu dobre, ze se snazis dosahnout volani typovanych operaci nad promenymi s datovym typem, ktery je znamy jenom v runtimu? Zkus se podivat na Dispatch nebo Double Dispatch pattern. Zakladnim principem u Dispatch patternu je prevratit mysleni a prohodit operandy. Napr. misto
storage.store(abstractSomething) volat
abstractSomething.store(storage) a presmerovat volani zpatky, ale uz s konkretnim datovym typem.
void ConcreteSomething::store(Storage& storage) {
storage.store(this); // This has ConcreteSomething type
}
void Storage::store(const ConcreteSomething& something) {
// Type is known here
}
http://en.wikipedia.org/wiki/Double_dispatchhttp://en.wikipedia.org/wiki/Visitor_patternDouble Dispatch je pouzity napr. tady:
http://graphal.sourceforge.net/http://sourceforge.net/p/graphal/code/ci/master/tree/libgraphal/ - tridy Value*