I've got an assignment operator in my class
template<typename T>
T& array<T>::operator[](int value);
this method can be used like a const and none const method:
array[100] = value; // None const cause if size > array.size(): resize it!
std::cout << array[0]; // const
If my object is instanced as a const object and ask me to resize it I must throw an exception.
How can I know that I am instanced as a const object ?