QList的用法

ParanoidKing 2012-11-19 02:52:03
在MainWindow的头文件中定义
QList<QWidget*> list1;
QList<QWidget*> list2;
之后运行直接就引用内存不能为read了。

是不是应该初始化什么的,对C++不熟。
...全文
1246 点赞 收藏 13
写回复
13 条回复
snowfield 2012年11月20日
可以用append方法向list中添加内容: QList<QWidget*> list; qDebug( ) << list.length(); list.append(new QPushButton); qDebug() << list.at(0); qDebug( ) << list.length();
回复 点赞
ParanoidKing 2012年11月20日
引用 4 楼 openXMPP 的回复:
list初始化 如果你没往里放数据 是会自动调用Qlist的构造函数的 也就是list1和list2的里面都为空 你肯定取不到数据了 这些其实跟qt没关系 LZ应该补补C++的知识
谢谢,我之前是做.NET的,没做过C++,被临时拉过来充数的。我没取数据,我是要往里面加数据。可是什么都没写就出错了。我想知道该怎么初始化?用new吗?
回复 点赞
ParanoidKing 2012年11月20日
引用 3 楼 jdwx1 的回复:
QList就假设是一个数组,储存数据用的,里面数据要添加进去,不添加数据list是空的。
我知道要添加,可是该怎么添加呢?我什么都没做就报错了。
回复 点赞
snowfield 2012年11月20日
引用 12 楼 jdwx1 的回复:
这个是正常现象,经常的出现,代码正常,但是运行出错(内存错误),就clear工程再编译就好了,还不行就手动删除编译产生的文件,再编译。
的确如此,有时候应该是一些目标文件没有更新。如果觉得代码没有问题,经常需要清除并重新构建试试。
回复 点赞
jdwx 2012年11月20日
引用 11 楼 ParanoidKing 的回复:
引用 10 楼 jdwx1 的回复:刚测试过,头文件里添加两行声明,绝对不会出错。 随便找个Qt自带的例子,编译一下看看,能不能通过编译,怀疑是Qt配置问题。 好吧,现在确实是没问题了。但是这个代码昨天跑确实不行,现在就好了,我什么都没改,撞邪了。
这个是正常现象,经常的出现,代码正常,但是运行出错(内存错误),就clear工程再编译就好了,还不行就手动删除编译产生的文件,再编译。
回复 点赞
ParanoidKing 2012年11月20日
引用 10 楼 jdwx1 的回复:
刚测试过,头文件里添加两行声明,绝对不会出错。 随便找个Qt自带的例子,编译一下看看,能不能通过编译,怀疑是Qt配置问题。
好吧,现在确实是没问题了。但是这个代码昨天跑确实不行,现在就好了,我什么都没改,撞邪了。
回复 点赞
jdwx 2012年11月20日
刚测试过,头文件里添加两行声明,绝对不会出错。 随便找个Qt自带的例子,编译一下看看,能不能通过编译,怀疑是Qt配置问题。
回复 点赞
ParanoidKing 2012年11月20日
如果只加一句就没问题,加两句就不行了。这是为什么?我觉得应该还是C++的问题,是不是引用了同一个地址?
回复 点赞
ParanoidKing 2012年11月20日
引用 7 楼 snowfeild 的回复:
可以用append方法向list中添加内容: QList<QWidget*> list; qDebug( ) << list.length(); list.append(new QPushButton); qDebug() << list.at(0); qDebug( ) << list.length();
谢谢,还没到这一步就出错了。我就新建了一个工程,在MainWindow的头文件里加了那两句,编译运行就出错了。
回复 点赞
乔巴好萌 2012年11月19日
list初始化 如果你没往里放数据 是会自动调用Qlist的构造函数的 也就是list1和list2的里面都为空 你肯定取不到数据了 这些其实跟qt没关系 LZ应该补补C++的知识
回复 点赞
jdwx 2012年11月19日
QList就假设是一个数组,储存数据用的,里面数据要添加进去,不添加数据list是空的。
回复 点赞
ParanoidKing 2012年11月19日
引用 1 楼 zhenwo123 的回复:
空的你怎么用阿?你创建这个list干啥用?
还没用呢,就加了这两句代码。我要根据list1是一组类似QMovie的东西,我要根据这个创建一组播放的控件,也就是list2.
回复 点赞
挣扎中前行 2012年11月19日
空的你怎么用阿?你创建这个list干啥用?
回复 点赞
发动态
发帖子
Qt
创建于2009-11-04

1.0w+

社区成员

2.5w+

社区内容

Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区公告
暂无公告