Skip to main content

Command Palette

Search for a command to run...

C++中const对象引用的一些限制

Published
•1 min read•View as Markdown

先上示例代码:

class Test {
public:
 void doConst() const {
//
}
void doNoConst() {
//
}
};

int main(int argc,char **argv){
Test t;
const &ct=t;
//error: passing xxx as 'this' argument of xxx discards qualifiers [-fpermissive]
ct.doNoConst();

//Correct;
ct.doConst();

return 0;
}

代码说明:

  • const引用的值不可改变(废话)

  • 只有声明为const的成员函数才能被const对象调用(重要,上面代码报错的原因)

More from this blog

解决QWidget用winId获取HWND而导致Qt程序无事件消息的问题

问题原因: 当对一个QWidget调用winId时,默认情况下,Qt会对该窗口进行Native化,从而导致如鼠标等事件被其它原生窗口接管,表现出来的现像就是窗口不响应任何事件 解决思路: 防止Qt窗口Native化 解决办法: 第一步,在创建QApplication对象之前设置: QApplication::setAttribute(Qt::AA_DontCreateNativeWidgetSiblings); //注意:Qt::AA_NativeWindows受环境变量 QT_USE_NATI...

Jul 7, 20251 min read
雷

雷的部落格威力缩小版

30 posts

雷的部落格威力缩小版