What are proxy objects?
Answers were Sorted based on User's Feedback
Answer / harendra pal
Objects that stand for other objects are called proxy objects or surrogates.
Example:
template<class T>
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:
Array2D<float>data(10,20);
........
cout<<data[3][6]; // fine
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 program as if they were using real, live, two-dimensional arrays. Each Array1D object stands for a one-dimensional array that is 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.
Is This Answer Correct ? | 0 Yes | 0 No |
Answer / harendra pal
Objects that points to other objects are called proxy objects or surrogates. Its an object that provides the same interface as its server object but does not have any functionality. During a method invocation, it routes data to the true server object and sends back the return value to the object.
Is This Answer Correct ? | 0 Yes | 0 No |
What is an explicit constructor?
Differentiate between a template class and class template?
Is c++ a high level language?
What is difference between malloc()/free() and new/delete?
What is Virtual Inheritance?
what are prototypes
Can you please explain the difference between overloading and overriding?
What is a stack c++?
What is the difference between method overloading and method overriding in c++?
Why should you learn c++?
What is prototype for that c string function?
Of the numbers 12 23 9 28 which would be at the top of a properly implemented maxheap a) 28 b) 9 c) Any of them could be