本文基于 wiki《 QT API Design Principles 》:
https://wiki.qt.io/Category:Developing_Qt::Documentation
c++提供了关键字“const”来表示某些东西不会改变或没有有副作用。这适用于值、指针和被指向的对象,也可以作为一个特别的属性应用于类的成员函数上,表示成员函数不能修改对象的状态。
然而,const本身并没有提供太大的价值 —— 很多编程语言甚至没有类似const的关键词,但是却并没有因此产生问题。实际上,如果你不用函数重载,并在C++源代码用搜索并删除所有的const,几乎总能编译通过并且正常运行。尽量让使用的const保持实用有效,这点很重要。
1. 输入参数:const指针 (Input arguments: const pointers)
有输入指针参数的const成员函数,几乎总是const指针参数。
bool QWidget::isVisibleTo(const QWidget *ancestor) const;
bool QWidget::isEnabledTo(const QWidget *ancestor) const;
QPoint QWidget::mapFrom(const QWidget *ancestor, const QPoint &pos) const;
待完成...