在 C++ 中,函数名后面加上const 关键字表示该函数不会修改对象的成员变量(除非成员变量是mutable的)。这是一种良好的编程习惯,可以提高代码的安全性和可读性。
在这个例子中,internalWinId() 和 effectiveWinId() 都被声明为 const,这意味着它们不能修改调用它们的对象的状态。如果这些函数试图修改对象的状态,编译器将报错。
此外,由于这些函数没有修改对象的状态,因此它们可以在 const 对象上调用。
inline WId internalWinId() const { return data->winid; }WId effectiveWinId() const;