私はいくつかのテンプレートコードをデバッグしていて、lldbに、巨大な複雑なtypedefの代わりにフレーム変数の実際の型(c-type)を表示させたいと思います。実際の型は "int"や "unsigned char"のようなものですが、typedefだけが特定のテンプレートインスタンスを知らないかのように表示されます。例えばtypedefの実際のタイプをlldbで表示できますか?
: "var_t fooという= 1" に設定されたブレークポイントで停止
template <typename T>
struct helper
{
using type = long;
};
int main(int argc, const char * argv[]) {
using var_t = typename helper<short>::type;
var_t foo = 1;
}
は、私は本当に
foo = (long)0
のようなものを見る必要が
foo = (var_t)0
があります示していどのような方法でこれを行うか、解決されたタイプが何であるかを知ることができますか?私はXCodeの7.3とlldb-350.0.21.3
それは役に立つトラックに私を入れました。それは特定のテンプレートインスタンスに関係なくタイプを報告します。私は、-Aフラグを追加すると、少なくとも解決された可能性のあるすべてのタイプを表示することがわかりました。私が欲しいのはどこかにあります。私が調べているテンプレートのインスタンスにどれが一致するか調べるだけです。おそらく、Pythonスクリプトがこれを自動化することができます。私は "image lookup -t template_name :: var_t"などを使用することはできません。 –