Subclassses with a forward declaration in the header file are not parsed/displayed with VA.
Examplecode:
Foo.h:
#pragma once
namespace x {
namespace y {
class Bar {};
class Foo
{
class Private;
public:
Foo();
~Foo();
public:
Bar getBar() const;
private:
Private* m_p;
};
}
}
Foo.cpp:
#include "Foo.h"
namespace x {
namespace y {
class Foo::Private
{
public:
Bar bar;
};
Foo::Foo()
{
m_p = new Private();
}
Foo::~Foo()
{
}
Bar Foo::getBar() const
{
return m_p->bar
}
}
}
If you change:
class Private;
...into...
class Private {};
The class is displayed in the class browser. With only as forward declaration, the class is not displayed. But the cpp file is parsed. I created a class X in the cpp file in the x::y namespace, and this class was displayed in the class browser too.
best regards
Tobias