環境
・UE4.23.1
・Visual Studio Comuunity 2019
UE4のUnreal C++環境について
リリース時のUE4のUnreal C++はC++11をベースに一部C++14で開発されていました
jp docだとC++11, us docだとC++14と記載されています。
Coding Standard | Unreal Engine Documentation
コーディング標準 | Unreal Engine ドキュメント
しかし、現在はC++17以降も使用できるようになっています。
ちょうどUE4.22でVisual Studio 2015のサポートを(基本的には)終了した頃からでしょうか。
※基本的にはと書いたのはtarget.csにCompilerの指定を書けばVS2015でも動作するためです。
おさらいとして、UE4で使用するIDEの変更方法についての記事も載せておきます。
papersloth.hatenablog.com
UE4のC++のバージョン指定方法
UE4で使用されるC++のバージョン指定はProjectのtarget.cs内に記述をすることで変更が可能です。
以下はプロジェクト作成時の target.csです
using UnrealBuildTool;
using System.Collections.Generic;
public class ProjectNameTarget : TargetRules
{
public ProjectNameTarget(TargetInfo Target) : base(Target)
{
Type = TargetType.Game;
ExtraModuleNames.AddRange(new string[] { "ProjectName" });
}
}
C++のバージョン指定は下記を追記するだけで行なえます。
CppStandard = CppStandardVersion.{任意のバージョン};
using UnrealBuildTool;
using System.Collections.Generic;
public class ProjectNameTarget : TargetRules
{
public ProjectNameTarget(TargetInfo Target) : base(Target)
{
Type = TargetType.Game;
ExtraModuleNames.AddRange(new string[] { "ProjectName" });
CppStandard = CppStandardVersion.Cpp17; //C++17を指定
// C++14の場合 -> CppStandardVersion.Cpp14
// 最新のC++の場合 -> CppStandardVersion.Latest
}
}