namespace A {
namespace B {
class C {
class D {
};
};
}
}
CXXRecords
за D
с getNameAsString
вернется D
,
Как я могу получить полное имя ::A::B::C::D
?
Я пытался рекурсивно позвонить getParent
но я не мог получить пространства имен ..
После долгих поисков и попыток я нашел
QualType::getAsString(cl->getASTContext().getTypeDeclType(const_cast<CXXRecordDecl*>(cl)).split())
Как полезное решение, он будет выводить class A::B::C::D
,
За namespace using std; vector<int> g;
это будет выводить class std::vector<int>
,
Имея только std::vector
было бы неплохо, но
простое манипулирование строкой решит эту проблему.