Я отлаживал некоторый код в Visual Studio 2005, когда заметил, что среда IDE не достигает точек останова в определенном универсальном классе. Я мог вручную войти в класс, но подсказки, показанные при наведении на ссылки, содержали только адреса памяти вместо обычных дружественных подсказок.
Оказывается, проблема в названии файла (!). В частности, когда имя файла содержит `(backtick, backquote), отладчик не будет загружать символы для этого файла. Обходной путь должен переименовать файл.
Во-первых, я использовал обратный тик для представления мощности универсального типа:
- Foo.cs содержит неуниверсальный тип (например, Foo)
- Foo`1.cs содержит универсальный тип с одним параметром типа (например, Foo )
- Foo`2.cs содержит обобщение с двумя параметрами типа (например, Foo )
Эта ошибка (не так ли) возникает и в Visual Studio 2008.
Кто-нибудь может объяснить это поведение?