小编Pal*_*lec的帖子

为什么QObject :: disconnect(const QMetaObject :: Connection&connection)需要const参数来修改它?

static bool QObject::disconnect(const QMetaObject::Connection &connection)

此方法旨在断开现有Connection对象以修改它.那么为什么函数参数被声明为const引用呢?

在源代码实现(qtbase/src/corelib/kernel/qobject.cpp)中,您可以找到不可避免的const_cast:

const_cast<QMetaObject::Connection &>(connection).d_ptr = 0;
Run Code Online (Sandbox Code Playgroud)

将函数参数标记为const函数的目的是修改它的优点是什么?

c++ qt

5
推荐指数
1
解决办法
135
查看次数

标签 统计

c++ ×1

qt ×1