Es gibt einige Stack Overflow-Benutzer, die stark befürworten immer die neue C++ 11 Trailing-Rückgabetyp Konvention beim Schreiben von Funktionen, wie main()->int
. Ich kann Vorteile sehen, da es die Notation einheitlich macht. Wenn jedoch ein Funktionszeiger deklarieren, kann ich keine Möglichkeit der Verwendung eines nachlaufRücksEndeFormular finden, können also erklären entwederVerwenden eines Funktionszeigers mit einem abschließenden Rückgabetyp
typedef int(*fp)(int);
oder
using fp = int(*)(int);
für einen Funktionszeiger nimmt eine int
und eine int
zurückgeben.
Gibt es eine Möglichkeit, die neue Trailing-Return-Syntax bei der Deklaration eines solchen Funktionszeigers zu verwenden? Zum Beispiel, so etwas wie
using fp = (*)(int)->int;
aber diese nicht kompiliert. Wenn nicht, gibt es einen Grund, warum die neue Syntax nicht auf Funktionszeiger anwendbar ist?
Danke, aus irgendeinem Grund vergaß ich über die Notwendigkeit von "Auto" in abschließenden Rückgabetyp Funktionen. Macht Sinn. – vsoftco
Ich habe es herausgefunden :) Vielen Dank, ich werde deine Antwort annehmen, da es 5 Sek. Schneller war :) – vsoftco