У меня есть класс-оболочка, который делегирует свою работу pimpl, и pimpl является указателем на базовый класс / интерфейс без данных, которые специализируются несколькими различными способами.
Как это:
class Base
{
void doStuff=0;
};
class Derived
{
int x,y;
void doStuff()
{
x = (x+y*2)*x; //whatever
}
};
class Wrapper
{
Base* _pimpl;
void doStuff()
{
_pimpl->doStuff();
}
};
Теперь это работает нормально в большинстве случаев, но при входе в отладчик я не могу просмотреть x, y класса Derived (потому что это может быть что угодно). Обычно это не имеет значения, но когда что-то идет не так, видение состояния Derived может быть важным, но pimpl слишком сильно затеняет это состояние (хотя это оригинальная идея pimpl, поэтому я не могу жаловаться).
Теперь у меня есть функция tostring (), которая печатает состояние для целей отладки, но мне было интересно, есть ли лучшее решение для отладки такого рода конструкции в частности в VisualStudio, но общее решение будет лучше. 1008 *
Спасибо