Added protected D-pointer constructor