讨论下:顺序栈中top()函数的是否应该重载个const函数?
在顺序栈的公有函数中的TOP函数是否需要这样:T& Top();
const T& Top() const;
我觉得是不需要这样的,因为栈只不会改栈中的内容。在vector等容器的下标重载操作符函数:
T& operator[](int index);
const T& operator[](int index) const;
是需要两个都有了,因为vector窗口可以存储常量。而栈中的Top()函数只是查看栈顶的内容,并不会修改,所以不是把Top写成重载函数,只写成const函数就行了,如下:
T& Top() const;
这样就行了,不知我的想法是否正确,请大家看下,谢谢!~
页:
[1]