Nazwy typów w zakresie klasy
Typy nazw zdefiniowane w zakresie klasy są traktowane jako lokalne dla ich klasy.Nie mogą być użyte poza tą klasą.Poniższy przykład demonstruje tą koncepcję:
// 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