緊湊的巢狀名稱空間

Version >= C++ 17

namespace a {
  namespace b {
    template<class T>
    struct qualifies : std::false_type {};
  }
}

namespace other {
  struct bob {};
}

namespace a::b {
  template<>
  struct qualifies<::other::bob> : std::true_type {};
}

你可以使用 namespace a::b 從 C++ 17 開始一步輸入 a 和 b 名稱空間。