2016-09-11 4 views
3

Я отлаживаю некоторый код C++, который содержит некоторые шаблоны C++ с T как аргумент шаблона. Я хотел бы видеть в часах (или на мыши) тип T.Как просмотреть аргумент шаблона C++ в окне просмотра в VS2015

Когда я добавляю T для просмотра, он не отображает тип. Есть ли способ разрешить аргумент T в отладчике?

Я вижу типы аргументов шаблона в стеке вызовов. Поскольку типы довольно сложны, строки в стеке вызовов так длинны, что не могут соответствовать моему дисплею. И очень трудно читать.

Есть ли способ разрешить аргумент T в отладчике?

Я использую Visual Studio 2015 Update 3.

enter image description here

ответ

2

Добавить _First или _Last в часы вдовы, они типа _Iter, и будет отображаться разрешенный тип. Я не думаю, что есть другой способ: во время компиляции _Iter заменяется любым типом, поэтому, как только приложение будет построено, больше нет имени _Iter.

+0

А что делать в случаях, когда экземпляр T отсутствует в исходном коде? – qub1n

+0

Не совсем уверен, что вы имеете в виду: когда нет инстанцирования, нет никакого типа, чтобы понять? И в любом случае на самом деле также нет скомпилированного исходного кода, поэтому в исполняемом файле нет следа класса, поэтому также не нужно отлаживать (как и с любым классом или функцией без шаблона) – stijn

+0

, а что касается typeid (T) или некоторой функции result = someMagicFunction () – qub1n