Es ist einfach, einen neuen Namen für einen Typ, eine Variable oder einen Namespace zu erstellen. Aber wie ordne ich einer Funktion einen neuen Namen zu? Zum Beispiel möchte ich den Namen hollerfür verwenden printf. #define ist offensichtlich ... auf andere Weise?
Lösungen:
#define holler printfvoid (*p)() = fn; //function pointervoid (&r)() = fn; //function referenceinline void g(){ f(); }
printfhier nicht mit . Das war nur ein Beispiel. Das Problem hier hat mehr mit Einschränkungen des Englischen als mit irgendetwas anderem zu tun. Ich habe eine einzige Funktion, die Zweck A und Zweck B erfüllt, aber ich kann hier einfach keinen einzigen Namen finden, der beiden Zwecken dient.
T &a = b;erstellt einen neuen Namen für b. typedeffür Typen und namespace A=B;für Namespaces.
using BaseClass::BaseClassMethodund es gibt using AliasType = Type;und es gibt sogar namespace AliasNamespace = Namespace;. Was wir vermissen istusing AliasFunction = Function;
void (&NewName)(some_vector&, float, float, float, float) = OldName;bei meinem nächsten Check-in zu sehen.