Chcę użyć deklaracji forward klasy w moim oprogramowaniu, dzięki czemu mogę napisać na maszynie
i użyć ich w deklaracji pełnej klasy.C++ Deklaracje błędów klasy C++?
czymś tak:
class myclass;
typedef boost::shared_ptr<myclass> pmyclass;
typedef std::list<pmyclass > myclasslist;
class myclass : public baseclass
{
private: // private member declarations
__fastcall myclass();
public: // public member declarations
__fastcall myclass(myclass *Parent)
: mEntry(new myclass2())
{
this->mParent = Parent;
}
const myclass *mParent;
myclasslist mChildren;
boost::scoped_ptr<myclass2> mEntry;
};
więc moje pytanie brzmi: czy są jakieś wady tej metody? Przypominam sobie pewną dyskusję na temat problemów destruktora z deklaracją, ale nie wydostałem wszystkiego.
lub czy jest jakaś inna opcja do zaimplementowania czegoś takiego?
Dzięki.
EDIT: znalazłem dyskusję miałem na myśli: here
cóż, przepraszam za głupotę, ale przeczytałem ją wcześniej i moje pytanie tutaj brzmi: jeśli jest zdefiniowane tuż po deklaracji, nie powinno być problemu, prawda? – Andrew
Tak, dobrze, tak to czytam. Miejmy nadzieję, że nasze kompilatory będą zgodne ze standardami :-) –