However, they will not be able to de-reference such a pointer, and can only change the object's content by calling some procedure that has the missing information.
[2] The type Handle is an opaque pointer to the real implementation, that is not defined in the specification.
[5] This example demonstrates a way to achieve the information hiding (encapsulation) aspect of object-oriented programming using the C language.
A d-pointer is a private data member of the class that points to an instance of a structure.
This method allows class declarations to omit private data members, except for the d-pointer itself.