Visual Studio のデバッガでウォッチ式のカスタマイズができることはよく知られています。
例えば、次のサイトなどに詳しく書かれています。
しかし、クラスメンバとして含まれているもののような場合、いちいち指定するのは面倒です。
例えば、デフォルトでローカルエンコーディング(CP932)で表示されてしまう非Unicode文字列をすべてUTF-8で表示させたいということがあると思います。
このような場合、Natvis ファイルによってカスタマイズが可能です。
Create custom views of native objects in the debugger
例えば、文字列を UTF-8 で表示させたい場合、%VSINSTALLDIR%\Common7\Packages\Debugger\Visualizers\stl.natvis の以下の部分で、"_Bx._Buf,s" を "_Bx._Buf,s8" に変更します。
<Type Name="std::basic_string<char,*>">
<DisplayString Condition="_Myres < _BUF_SIZE">{_Bx._Buf,s}</DisplayString>
<DisplayString Condition="_Myres >= _BUF_SIZE">{_Bx._Ptr,s}</DisplayString>
<StringView Condition="_Myres < _BUF_SIZE">_Bx._Buf,s</StringView>
<StringView Condition="_Myres >= _BUF_SIZE">_Bx._Ptr,s</StringView>
Visual Studio を再起動すると適用されます。
この記事は、以下の記事を参考にしました。