When I add a custom SharedVariable, the constructor will infinity be called.(On Hover in Behavior Designer work Window)
However, if you change the variable value, it is no longer created.
I want the constructor to be called exactly once when I create a variable.
Am I misunderstanding how to use it?
When you change the value in game with the Value property the constructor will not be called. The editor does some behind the scenes wiring in order to ensure all of the variables are correctly configured.