c – 我可以为特定的模板实例添加断点吗?

前端之家收集整理的这篇文章主要介绍了c – 我可以为特定的模板实例添加断点吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
假设我有一个模板类:
template <typename T>
class A
{
public:
   void foo() 
   {
      int i = 0; //breakpoint here only for type A<int>
   }
}

我可以在Visual Studio添加一个断点,只会在一些实例化的情况下打破foo吗?

只适用于A< int> :: foo?

我们假设我有100个模板化的实例化与不同的类型.

编辑:

我知道如何使用某种类型的方式进行实例化.
问题是我可以不专业吗?

解决方法

我找到了.
只需在你想要的行中放置一个断点(我会用std :: shared_ptr<>)显示一个例子).
然后转到Breakpoints窗口并注意到,当它断开时,断点旁边会有一个打开所有不同实例的断点.
粗体线是当前处于活动状态的断点.

现在,不幸的是,“断点”窗口不会显示实际的模板实例.
但是,您可以使用调用堆栈来查看当前使用的实例.
或者,您可以右键单击每个断点,然后选择“转到拆卸”.

这可能会为您提供实际模板实例化的提示.然后,您可以选择哪些断点和要保持活动的类型.

猜你在找的C&C++相关文章