Construct object from : When can I call the variables?

Hey everyone quick question here !

When you construct object from class I understood that the constructor is called before so you can’t use the public properties from the “onSpawn” so I tried to use post init properties which doesn’t work either I guess it’s for actors so what can I use?
Do I really have to do a Init function that I call after? This seems like the dumbest thing.

Thanks for your help !

Don’t understand the question a bit, but PostInitProperties i called when all variables of object are set to there default state. To support virtual machine systems like Blueprints, UE4 need to copy default variables stored in Class Default Object (CDO) in to object memory and UE4 by calling PostInitProperties conforms that this process is complete.

Oh sorry so let me explain a bit.
In blueprint I construct my class with the node construct object from class right? So I have initial variables I set in blueprint using this construct object right?
Using these variables I am, as an example, initialising some TArray using those variables. The issue I have right now is that I don’t understand where I can do this because if I put let’s say myTarray.Reset(size) with size behing a UPROPERTY exposed on spawn well size return its default value. Even if I do this in PostInitProperties which I find weird.
So right now what I am doing is I call an init function after the construct and it works but it’s really counter intuitive obviously.
I hope it makes more sense?