.natvis - 如何引用模板模板参数?
Posted
技术标签:
【中文标题】.natvis - 如何引用模板模板参数?【英文标题】:.natvis - how to reference a template template parameter? 【发布时间】:2017-04-13 08:11:51 【问题描述】:我正在尝试为 Visual Studio 创建一个 .natvis
文件。根据这个page,我可以使用$T1, $T2
等来引用模板参数。所以在MyClass<A>
的情况下$T1
将引用A
类型。这行得通。但在我的情况下,A
本身就是一个模板,我需要引用它的参数,某种 $T1<$T1>
- 但这显然不起作用。
【问题讨论】:
【参考方案1】:至少在 Visual Studio 2015 中,模板参数伪变量$T1
、$T2
等似乎实际上对应于类型“名称”表达式中的通配符,而不是严格对应于模板参数。
例如,当
<Type Name="outer<*,inner<*>,*>">
匹配outer< int, inner< float >, short, long >
,$T1
扩展为int
,$T2
扩展为float
,$T3
扩展为short, long
。
【讨论】:
以上是关于.natvis - 如何引用模板模板参数?的主要内容,如果未能解决你的问题,请参考以下文章
VSCode natvis 处理某些变量,但不处理相同模板类型的其他变量
在 natvis 可视化器的第一个扩展级别上扩展模板类型的成员