Hi
I implemented some Game Mechanics with Blueprints and am now tying to convert my logic to C++…
But I can’t get my structs through the compiler…
For example I created a FCityData Struct in VS which I want to use for the SaveGame process.
VS is telling me there is a missing semicolon and the if I press compile in Unnreal Editor a weird error message like shows up in the message log.
CityData Header:
// CityData.h
//
USTRUCT()
struct FCityData
{
GENERATED_USTRUCT_BODY()
UPROPERTY()
FString cityName;
UPROPERTY()
int32 coins;
UPROPERTY()
int32 wood;
UPROPERTY()
int32 stone;
UPROPERTY()
int32 food;
//Constructor
FCityData()
{
cityName = "";
wood = 0;
stone = 0;
food = 0;
}
};
SaveGame Header:
// MySaveGame.h
//
#pragma once
#include "GameFramework/SaveGame.h"
#include "CityData.h"
#include "PmcSaveGame.generated.h"
UCLASS()
class PMC_API UMySaveGame : public USaveGame
{
GENERATED_BODY()
public:
UPROPERTY()
FString playerName;
UPROPERTY()
FCityData cityData;
};
Error Messages:
Translated it would be mean someting like
- “FString”: Unkown declaration
- “cityName”: Unkown declaration
- Missing Type Specifier int is
accepted. NOTE: “default-int” is not
supportet by C++.
CompilerResultsLog:Error: Error c:\users\tom coursow\documents\unreal projects\dgtill\pmc 4.10\source\pmc\CityData.h(11) : error C3646: “FString”: Unbekannter ?berschreibungsspezifizierer
CompilerResultsLog:Error: Error c:\users\tom coursow\documents\unreal projects\dgtill\pmc 4.10\source\pmc\CityData.h(11) : error C3646: “cityName”: Unbekannter ?berschreibungsspezifizierer
CompilerResultsLog:Error: Error c:\users\tom coursow\documents\unreal projects\dgtill\pmc 4.10\source\pmc\CityData.h(11) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: “default-int” wird von C++ nicht unterst?tzt.
CompilerResultsLog:Error: Error C:\Users\Tom Coursow\Documents\Unreal Projects\Dgtill\pmc 4.10\Source\pmc\CityData.h(24) : error C2065: “cityName”: nichtdeklarierter Bezeichner
CompilerResultsLog:Error: Error C:\Users\Tom Coursow\Documents\Unreal Projects\Dgtill\pmc 4.10\Intermediate\Build\Win64\UE4Editor\Inc\pmc\pmc.generated.cpp(22) : error C2039: “StaticStruct”: Ist kein Element von “FCityData”
CompilerResultsLog:Error: Error C:\Users\Tom Coursow\Documents\Unreal Projects\Dgtill\pmc 4.10\Source\pmc\CityData.h(7) : note: Siehe Deklaration von “FCityData”
CompilerResultsLog:Error: Error C:\Users\Tom Coursow\Documents\Unreal Projects\Dgtill\pmc 4.10\Intermediate\Build\Win64\UE4Editor\Inc\pmc\pmc.generated.cpp(34) : error C2039: “StaticStruct”: Ist kein Element von “FCityData”
CompilerResultsLog:Error: Error C:\Users\Tom Coursow\Documents\Unreal Projects\Dgtill\pmc 4.10\Source\pmc\CityData.h(7) : note: Siehe Deklaration von “FCityData”
CompilerResultsLog:Error: Error C:\Users\Tom Coursow\Documents\Unreal Projects\Dgtill\pmc 4.10\Intermediate\Build\Win64\UE4Editor\Inc\pmc\pmc.generated.cpp(185) : error C2039: “cityName”: Ist kein Element von “FCityData”
CompilerResultsLog:Error: Error C:\Users\Tom Coursow\Documents\Unreal Projects\Dgtill\pmc 4.10\Source\pmc\CityData.h(7) : note: Siehe Deklaration von “FCityData”
CompilerResultsLog:Error: Error C:\Users\Tom Coursow\Documents\Unreal Projects\Dgtill\pmc 4.10\Intermediate\Build\Win64\UE4Editor\Inc\pmc\pmc.generated.cpp(185) : error C2664: “UStrProperty::UStrProperty(const UStrProperty &)” : Konvertierung von Argument 1 von “FObjectInitializer” in “ECppProperty” nicht m?glich
CompilerResultsLog:Error: Error C:\Users\Tom Coursow\Documents\Unreal Projects\Dgtill\pmc 4.10\Intermediate\Build\Win64\UE4Editor\Inc\pmc\pmc.generated.cpp(185) : note: Kein benutzerdefinierter Konvertierungsoperator verf?gbar, der diese Konvertierung durchf?hren kann, oder der Operator kann nicht aufgerufen werden