何事にも例外が有ってよいと思うわけです、ハイ
完ぺき主義者ではないので

仮に
「インナークラスの型のポインタ変数を前方参照っぽく定義より先に使って宣言したいときは
 struct hogehoge; と事前に前方宣言しなければならない」
というルールが有ったとしても、この程度は何の手間でもないから問題ないですね