Actor constructor causing "Accessed none" ?


I have a plugin project started with Unreal 4.6 (or4.5) that I have developped over versions from up to 4.8.3 (I just followed the updates).

In this plugin I have an actor class.

I am using an instance of this actor class inside a Blueprint class that is created inside the level and passed as a reference to the blueprint class.

When I run my game in simulation mode, everything works fine. I get proper data from my C++ class and the game goes its way.

If I do “Launch” and that I look at the log, I see system complaining “Accessed none” bout my C++ class.

I thought it was caused by inability of linking with some external libraries (like ws2_32.dll), so I removed all external function calls from my C++ class. It has become an almost empty class doing nothing.

Nevertheless, I still get this"Accessed none" error message !

I was thinking it could be because of the Actor constructor parameters which has canged.

If I create a new project under 4.8.3 and that I create a C++ class of the type"Actor", its costructor comes with no parameters.

If I try removing parameters in my Actor class constructor, it does not compile anymore.

Only way that works is by
having AActorClass (const FObjectInitializer& ObjectInitializer) : Super(ObjectInitializer).

When my plugin had originaly been created, I had a construcor like:

AActorClass (const class FPostConstructInitializeProperties& PCIP)
: Super(PCIP)

Now Iam cometely mixed-up wit that.

Can someone help me on it ?

Thans and regards,

Do you have the scope operator before you constructor? i.e:

AActorClass::AActorClass(const FObjectInitializer& ObjectInitializer) : Super(ObjectInitializer)

That should work fine. Accessed None usually refers to a NULL pointer de-reference or trying to access an invalid array element. Any kind of null memory operation really.

ObjectInitializer replaced PCIP way back in 4.6 I believe.

Tank you,

I needed to define a Tick function or set PrimaryActorTick.bCanEverTick to false.