给自定义控件中的 全局变量赋值 为何会报错呢?
public:
QVariant data(const QModelIndex & index, int role) const;
private:
QString strServerPath;
treemodel.cpp
QVariant TreeModel::data(const QModelIndex & index, int role = Qt::DisplayRole) const
{
strServerPath="aaa";
}
想给全局变量 strServerPath赋值 为 aaa, 结果报错:
error: passing 'const QString' as 'this' argument of 'QString& QString::operator=(const char*)' discards qualifiers [-fpermissive]
strServerPath="aaa";
^
如果去掉const 就有会报错,但无const 整个 QVariant data(const QModelIndex & index, int role) 函数就无效,
请求高人指点。
相关推荐
解决C++全局变量只能初始化不能赋值的问题
C++中,全局变量只能声明、初始化,而不能赋值 也就是说,下面这样是不被允许的: #include <cstdio> using namespace std; int a; a = 2; int main() { return 0; } 错误提示是: C++ requires a type specifier for all declarations 声明、初始化与赋值的区别: 声明:int a; 初始化:int a = 2;(在声明的时候顺带赋值叫做初始化) 赋值:a = 2; 只有定义(int a;)才分配存储空间,初始化必须要有存储空间来初始化 全局变量在声明时候顺带赋值(也就是初
浅谈java中的局部变量和全局变量
主要涉及了java中的局部变量和全局变量,就二者的含义、生存时间和创建位置作了介绍,需要的朋友可以参考下。
浅析Angular19 自定义表单控件
主要介绍了Angular19 自定义表单控件的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
C#自定义控件之-自定义MessageBox
C#自定义控件之-自定义MessageBox
python局部赋值的规则
复制代码 代码如下: myVar = 1 def myfunc(): myVar += 1 myfunc() 会提示错误: UnboundlocalError: local variable ‘myVar’ referenced before assignment Python提出如下假设:如果在函数体内的任何地方对变量赋值,则Python将名称添加到局部命名空间中。 语句myVar += 1对名称myVar赋值,则myVar是函数myfunc的局部命名空间的一部分,而它当前没有关联值,所以会产生错误。 解决方法:使用global语句 复制代码 代码如下:myVar = 1


