Ich benutze boost serialization und muss jetzt das BOOST_CLASS_EXPORT_GUID Makro benutzen, um meine Klasse zu registrieren. Dieses ist in der export.hpp definiert, die ich deshalb includieren muss. Interessanterweise darf ich die nicht in einen PCH packen, sondern muss die jedesmal von Hand inkludieren, wenn ich das Makro benutzen will, ansonsten bekomme ich den Fehler "error C2888: 'boost::archive::detail::`anonymous-namespace'::init_guid<ComponentProducer>': Symbol kann nicht im Namespace 'anonymous-namespace' definiert werden".
Jetzt würde ich gerne wissen, warum das so ist. Gefunden habe ich dazu folgenden Link:
http://lists.boost.org/boost-users/2009/05/48315.php
(bei "next in Thread" gehts weiter), der mir zwar geholfen hat, das Problem zu lösen (ich wäre nie auf die Idee gekommen, den Header aus der PCH zu nehmen), aber ich würde jetzt auch gerne verstehen, warum das so ist.
boost::serialization: kein export.hpp in pch
boost::serialization: kein export.hpp in pch
Lieber dumm fragen, als dumm bleiben!
https://jonathank.de/games/
https://jonathank.de/games/