Languages-C & C Plus Plus [3i Infotech Placement]: Sample Questions 261 - 261 of 354

Glide to success with Doorsteptutor material for competitive exams : get questions, notes, tests, video lectures and more- for all subjects of your exam.

Question 261

C & C Plus Plus

Describe in Detail


What are proxy objects?


  • Objects that stand for other objects are called proxy objects or surrogates. Example: template class Array2D {public: class Array1D {public: T& operator [] (int index) ; const T& operator [] (int index) const; …} ; Array1D operator [] (int index) ; const Array1D operator [] (int index) const; …} ; The following then becomes legal: Array2Ddata (10,20) ; …
  • Here data [3] yields an Array1D object and the operator [] invocation on that object yields the float in position (3,6) of the original two dimensional array.
  • Clients of the Array2D class need not be aware of the presence of the Array1D class.
  • Objects of this latter class stand for one-dimensional array objects that, conceptually, do not exist for clients of Array2D.
  • Such clients work as if they were using real, live, two-dimensional arrays.
  • Each Array1D object stands for a one-dimensional array absent from a conceptual model used by the clients of Array2D.
  • In the above example, Array1D is a proxy class.
  • Its instances stand for one-dimensional arrays that, conceptually, do not exist.

Developed by: