2012-03-07 8 views
2

ウォッチウィンドウで名前のない名前空間の型にキャストするにはどうすればよいですか?与えられた

namespace 
{ 
    struct Blah 
    { 
     int x; 
     float y; 
     std::string z; 
    }; 
} 

Blah x; 

は、ウォッチウィンドウで*(Blah*)&xを追加します。キャストに失敗し、タイプが不明であるというエラーが表示されます。不思議なことに、は、をウォッチウィンドウに入れるだけで正しくタイプ表示されるので、タイプを知る必要があります。

参考までに、autoexp.datを拡張してカスタムクラスのデバッグビジュアライゼーションを追加しています。この問題は、クラスのテンプレート引数が名前のない名前空間で宣言された型であると、視覚化が失敗する原因になります。

誰でもこれを行う方法を知っていますか? MSDNに記載されているように

答えて

0

http://msdn.microsoft.com/en-us/library/0888kc6a%28v=vs.100%29.aspx

"ネイティブC++の式の評価者が匿名の名前空間をサポートしていません。"

彼らは装飾名を使用することをお勧めし

+0

飾ら名(私も、ウォッチウィンドウに置くことができる何かを)得るために何の実行時の方法がありませんように見えます。ああ。 – David

関連する問題