Nach [basic.lookup.qual]/3,
In einer Erklärung, in der die declarator-ID ist einequalifizierte ID, verwendete Namen vor der qualifizierten ID deklariert werden im Definitionsbereich Namespace nachgeschlagen; Namen, die auf die qualifizierte ID folgen, werden im Bereich der Klasse oder des Namespaces des Members nachgeschlagen.
Der Rückgabetyp kommt, bevor die qualifizierte ID erklärt zu werden (das heißt, A::Method
), während die Art des Parameters, nachdem es kommt, so dass der Name des Parametertypen automatisch in dem Rahmen A
nachgeschlagen wird, während die Der Name des Rückgabetyps ist nicht. Wir können die zusätzliche Qualifikation vermeiden, indem wir einen nachgestellten Rückgabetyp verwenden.
auto A::Method(B argument) -> B;
Bin ich der einzige Typ, der das Standardzitat zehnmal langsam lesen musste, um es zu bekommen? – user
@user Ich merke, dass es nicht so einfach zu lesen ist, wenn Sie nicht mit dem Vokabular vertraut sind. Deshalb habe ich auch unten erklärt. – Brian
Ja, du hast mir auf jeden Fall 20 zusätzliche Lesevorgänge erspart – user