ITedite

名前空間の先頭に必要な::について

namespace hogehoge{
class Hoge{
public:
  static constexpr int HOGE_VAL = 1;
};
}

というクラスを外部から使う場合に、

hogehoge::Hoge::HOGE_VAL;

ではビルドが通らず、

::hogehoge::Hoge::HOGE_VAL;

にしないとビルドが通らない原因がわかっていない。