1. ホーム
  2. c++

[解決済み] qualified-id/name、unqualified-id/nameとは何ですか?

2022-02-18 18:27:51

質問

いろいろなところでこの用語を目にするので、どなたか解説していただけませんか?私はそれらの基本的な理論をいくつか知っていますが、私が知っていることが正しいのか間違っているのかわかりません。

そこで、どなたかこれらの用語について解説していただけませんか?

どのように解決するのですか?

修飾名とは、クラス指定、名前空間指定など、その名前が属する場所を示す何らかの表示があるものを指します。非修飾名とは、修飾されていない名前です。

James McNellis氏の回答はこちら。

ネストされた名前指定子とは何ですか?

与えられた。

struct  A {
    struct B {
        void F();
    };
};

  • A 非限定ID .
  • ::A 修飾ID を持たないが ネストされた名前指定子 .
  • A::B 修飾ID A:: ネストされた名前指定子 .
  • ::A::B 修飾ID A:: ネストされた名前指定子 .
  • A::B::F 修飾ID B::A::B:: ネストされた名前指定子 .
  • ::A::B::F 修飾ID B::A::B:: ネストされた名前指定子 .