I'm not sure if these were the results you were expecting, but it seemed to work for me whenever I debugged and looked at the values for what pData was pointing to.
Are you intending to modify DD in the function being called?
If so, your intentions of DD being constant, may not be what you want. Possibly make it non constant; declared without const.
Else, if it was meant to be constant, there would be no way to modify its contents; why would you want to modify something you determine to be constant?