Problems with Constructor of USturct

enter code hereI made a UStruct and it made some error, which tell me that ‘there’s no proper constructor.’
So I add another constructor empty in it. Then it works well, but I don know why this made problem and why this can be solved in this way. Can anybody teach me?

struct FCircum
{
	GENERATED_BODY()
	FCircum() {} ///// Without this Constructor, it makes compiling error
	FCircum(uint16 distance, FBlackAndWhite blackAndWhite)
	{
		Distance = distance;
		BlackAndWhite = blackAndWhite;
	}
	UPROPERTY()
	uint16 Distance;
	UPROPERTY()
	FBlackAndWhite BlackAndWhite;

};

FBlackAndWhite is struct made above.

That because the generated is using that constructor for reflection system purposes.

If you don’t plan to use structure with blueprints or property editor, or you don’t have any UObject pointers in structure (as they need ot be controlled to prevent invalid pointers), you don’t need to place USTRUCT and UPROPERTY. Struct will work normally in C++ without those, UE4 simply won’t track them and it should solve the issue if it really annoys you.

Thanks a lot for your kind reply!!
It’s very helpful