ich Unreal Engine bin neu, und ich versuche, eine inline
Funktion zu erklären, wie folgend:Inlining die Unrealengine UE_LOG Makro mit C++
void inline Print(const char* s) {
UE_LOG(LogTemp, Warning, TEXT("%s"), s);
}
Um den Anruf zu UE_LOG
mit LogTemp
und Warning
zu vermeiden jedes Mal.
Wenn beispielsweise Print("Hello")
aufgerufen wird, ist der Ausgang LogTemp:Warning: 效汬o
.
Meine Vermutung ist etwas im Zusammenhang mit der ASCII-Codierung, aber ich bin mir wirklich nicht sicher.
Ich habe auch versucht reinterpret_cast
wie folgt zu verwenden:
void inline Print(const char* s) {
UE_LOG(LogTemp, Warning, TEXT("%s"), reinterpret_cast<const TCHAR *>(s));
}
Aber endete mit dem gleichen Ergebnis.
Ich würde gerne den richtigen Weg (ich wollte nicht MACRO über Inline-Funktion verwenden) wissen, und wenn es eine einfache Erklärung, was der Grund für die Kauderwelsch-Ausgabe ist, wird es auch sehr sein sinnvoll.