名前空間内の変数に、solaris dbx デバッガを使用して値を割り当てようとしています。ただし、デバッガーは変数が名前空間内に存在しないと言っています。solaris 10 で Sun studio 12.3 を使用しています。
いくつかの停止を入れてプログラムを実行した後、上位レベルの名前空間以外の場所で中断します。私は名前空間を見ることができます...
(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 を使用していましたが、64 ビット プログラムで作業する必要がある gdb のバージョンを取得できなかったため、dbx に移行する必要がありました。