Odpovídáte na názor ke článku Databáze a C++: najdete řešení?.
C++ sice moc nerozumím, ale co přepokládám:
1) Jestliže C++ nemá reflexi, jsou zde 2 možnosti: Buďto ji nějakým netriviálním (rozeznání struktury objektu přímo v paměti - nepředpokládám, že to jde, nebo zpracování deklarace třídy ze zdrojáku a její dostupnost v runtime) způsobem doděláte, nebo musíte vytvořit mapovač pro každou ukládanou třídu extra pro ukládání do DB.
2) Je to tak, collection je běžný objekt s adresováním jeho vlastností indexy místo pojmenováními. Na druhou stranu tato funkcionalita může porušit zapouzdření dat (danou dostupností instancí) - je to, jako kdybyste chtěl mít v aplikaci dostupnou funkci správce paměti, který vám vrátí všechny objekty vybrané vlastnosti, takže se můžete hrabat zcela kdekoli.
3) Obdobně jako 1) - bez reflexivity to asi nepůjde, ještě k tomu „obj.numField == 20“ není vlastně jak přeložit. Kdyby to bylo jako řetězec k překladu na dotaz databází, tak už se s tím dá něco dělat. Možná i jako uzávěra by to šlo zpracovat, ale ty C++ nemá. Mimoto opět porušení zapouzdření jako v 2).
Autor se zabývá vývojem kompilátorů a knihoven pro objektově-orientované programovací jazyky.
Přečteno 37 774×
Přečteno 26 420×
Přečteno 24 932×
Přečteno 21 278×
Přečteno 18 930×