Just a moment...
UE_LOGは便利だが、UKismetSystemLibrary::PrintStringで画面にログを表示したい時に、sprintfのようなものがあったらいいなって探したらこれを見付けた。printfと同じフォーマットで文字列が作れる。(というか既にC/C++標準関数みたいなのも使いまくっちゃっていたりもするんだが。後々困ることになるんだろうか)
FString temp = FString::Printf(TEXT(“test文字列=%d”), 1234);
UE_LOG(LogTemp, Log, TEXT(“%s”), *temp);
UKismetSystemLibrary::PrintString(this, *temp, true, true, FColor::Red, 5.0f, TEXT(“None”));
これを自分で書いておいてなんだが、Printfの中のTEXT()を忘れがち。忘れると変なコンパイルエラーが出て悩んだりする。
UE_LOGを次のように書いてもコンパイルエラーになる。
UE_LOG(LogTemp, Log, *temp);
3番目のパラメータ(format)はリテラルじゃないとダメらしい。
コメント
[…] 【UE5】FStringのPrintf […]