var n'est pas un membre de l'intérieur de la classe.
Pour accéder var, un pointeur ou une référence à l'extérieur de la classe de l'instance devrait être utilisé. par exemple, pOuter->var fonctionne si l'intérieur de la classe est un ami de l'extérieur, ou, var est public, si l'on suit le standard C++ strictement.
Certains compilateurs traiter les classes internes comme l'ami de l'extérieur, mais certains ne peuvent pas. Consultez ce document pour IBM compilateur:
"Une classe imbriquée est déclaré dans le champ d'application d'une autre classe. Le nom d'une classe imbriquée est local à sa classe englobante. À moins d'utiliser des pointeurs, références, ou des noms d'objets, de déclarations dans une classe imbriquée pouvez utiliser uniquement visible des constructions, y compris les noms, les membres statiques, et des enquêteurs de la classe englobante et des variables globales.
Les fonctions membres d'une classe imbriquée suivez les règles d'accès et n'ont pas d'accès spécial de privilèges pour les membres de leur joignant les classes. Les fonctions membres de la classe englobante n'ont accès aux membres d'une classe imbriquée."