Обновление: после дополнительных копаний, похоже, проблема со статическими методами и переменными-членами. Я нашел этот пост на форумах MSDN, но ответа нет.
Я пишу приложение C # WinForms (.Net 2.0) с dll в смешанном режиме в одном решении. Когда я вхожу в нативный код во время отладки, я не могу «наблюдать» за многими переменными указателя. Это кажется странным поведением, потому что некоторые из указателей являются наблюдаемыми (я думаю, это слово :))
например:
Connection* Connection::Instance()
{
if (innerConnection == NULL)
{
innerConnection = new Connection();
}
return innerConnection;
}
При пошаговом выполнении этого метода innerConnection недоступен для меня. Значение для этого в окне наблюдения - «ошибка: идентификатор« innerConnection »вне области видимости». Внутреннее соединение здесь не должно выходить за рамки.
Также в этом примере в окне «Autos» «this» имеет
Проект C # устанавливается в качестве запускаемого проекта и ссылается на проект C ++ dll (все в одном решении). Я включил встроенную отладку в проекте C # и установил режим отладки на Auto в проекте C ++ / CLI. Я использую Visual Studio 2005