7
のメンバクラスを返す:いない引数の型のためながら次の例ではC++
class A
{
public:
class B
{
...
}
B Method(B argument);
}
A::B A::Method(B argument);
は正確に、戻り型に必要な範囲であり、なぜですか? 【basic.lookup.qual]/3による
のメンバクラスを返す:いない引数の型のためながら次の例ではC++
class A
{
public:
class B
{
...
}
B Method(B argument);
}
A::B A::Method(B argument);
は正確に、戻り型に必要な範囲であり、なぜですか? 【basic.lookup.qual]/3による
、宣言子-IDは修飾-ID、修飾-IDの前に使用される名前である宣言で
定義されている名前空間のスコープ内で参照されると となります。 修飾IDに続く名前は、メンバーのクラスまたは名前空間の有効範囲 で検索されます。
資格-IDが宣言される前にしながら、パラメータの型は、それの後に来るので、パラメータの型の名前がA
の範囲で自動的に検索されるのに対し、戻り値の型(つまり、A::Method
ある)来ます戻り値の型名はそうではありません。末尾の戻り値型を使用して余分な修飾を避けることができます。
auto A::Method(B argument) -> B;
私は、それを得るために標準的な見積もりを10回ゆっくりと読まなければならなかった唯一の男ですか? – user
@userあなたが語彙に慣れていないと読みにくいことが分かります。それで、私も以下で説明しました。 – Brian
はい、あなたは間違いなく私にさらに20の読書を保存しました – user