Nomes de tipo no escopo de classe
Os nomes de tipo definidos no escopo de classe são considerados locais para sua classe.Eles não podem ser usados fora dessa classe.O exemplo a seguir demonstra esse conceito:
// type_names_in_class_scope.cpp
// C2146 expected
class Tree {
public:
typedef Tree * PTREE;
PTREE Left;
PTREE Right;
void *vData;
};
PTREE pTree; // not in class scope