Multidelegate addUObject parameter

//definbe a delegate with one para
DECLARE_MULTICAST_DELEGATE_OneParam(FOnPostPropertyChange, FPropertyChangedEvent&);
FOnPostPropertyChange OnPostPropertyChange;

// Excute
OnPostPropertyChange.Broadcast(PropertyChangedEvent);

//Add an object
if (auto MaterialInstConst = Cast<UMaterialInstanceConstant>(MaterialInst))
{
	MaterialInstConst->OnPostPropertyChange.AddUObject(this, &AOmniverseSceneActor::OnMaterialInstEdit, MaterialInstConst);
}

void AOmniverseSceneActor::OnMaterialInstEdit(FPropertyChangedEvent& PropertyChangedEvent, UMaterialInstanceConstant* MaterialInst)

My question is in AddUObject, We add another parameter, and in the binding function, there are two paras, I just wonder how do UE4 know the order of parameters? Thanks