【发布时间】:2019-09-11 07:54:36
【问题描述】:
所以我正在尝试制作一个只保存字符串变量的通用 C++ 静态文件。我在这个项目中使用虚幻引擎 4。 我有一个可行的解决方案,但我想看看我在 C# 中所做的事情是否可以在 C++ 中完成。
工作解决方案(C++): DFControllerGameModeBase.h
#pragma once
#include "CoreMinimal.h"
#include "GameFramework/GameModeBase.h"
#include "DFControllerGameModeBase.generated.h"
#define MoveForwardInput "MoveForward"
实施:
#include "DFControllerGameModeBase.h"
void ADFCharacter::Play(){
.....
string text = MoveForwardInput;
}
但这是我在 C# 中使用 Unity 所做的:
using System;
namespace Assets.Scripts.Helpers
{
public static class Utilities
{
public static string MoveForward = "MoveForward";
}
}
实施:
using Assets.Scripts.Helpers;
void Play(){
string text = Utilities.MoveForward;
}
【问题讨论】:
-
我不知道这是否是你真正需要的,但你可以使用命名空间和枚举类来做到这一点。不会是静态变量,但会符合目的。并且您可以使用一次包含警卫或 pragma 以避免重复。
-
@Radagast 感谢您的指导,我考虑过枚举。这更像是我尝试探索 C++ 并翻译我的 C# 示例的问题
-
@sujaygchand bruglesco 的重定向链接应该是更好的选择。祝你好运!
标签: c# c++ unreal-engine4