Я пытаюсь присвоить значение с помощью отладчика Solaris DBX переменной внутри пространства имен. Тем не менее, отладчик говорит, что переменная не существует в пространстве имен. Использование Sun studio 12.3 на солярисе 10.
После того, как я сделал несколько остановок и запустил программу, я сломал что-то, кроме пространства имен на более высоком уровне. я могу видеть пространство имен …
(dbx)>>whatis mynamespace
mynamespace is a namespace
и даже функционирует в пространстве имен …
(dbx)>>whatis specialfunction
mynamespace::specialfunction is a function in namespace mynamespace
Тем не менее, я не могу получить доступ (назначить или напечатать) переменные в пространстве имен.
(dbx)>>assign mynamespace::myvariable=0
No variable named myvariable is in namespace mynamespace.
(dbx)>>print mynamespace::myvariable
No variable named myvariable is in namespace mynamespace
Я постараюсь остановиться в пространстве имен и посмотреть, будет ли это иметь значение. Я использовал GDB с тем же кодом раньше без проблем, но мне пришлось перейти на dbx, потому что я не мог получить версию GDB, мне нужно работать с 64-битной программой.
Задача ещё не решена.
Других решений пока нет …