小编Gen*_*nba的帖子

压制泄漏对Valgrind意味着什么?

我在文件研制出纯C语言实现FIFO列表(队列)的fifo.hfifo.c,并写了一个测试程序testfifo.c,我编译成./bin/testfifo.节点结构定义于list.h.

我在OS X 10.6上通过Valgrind运行我的程序

valgrind --tool=memcheck --leak-check=full --show-reachable=yes ./bin/testfifo
Run Code Online (Sandbox Code Playgroud)

并获得以下输出

==54688== Memcheck, a memory error detector
==54688== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
==54688== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info
==54688== Command: bin/testfifo
==54688== 
--54688-- bin/testfifo:
--54688-- dSYM directory is missing; consider using --dsymutil=yes
==54688== 
==54688== HEAP SUMMARY:
==54688==     in use at exit: 88 bytes in 1 blocks
==54688==   total heap …
Run Code Online (Sandbox Code Playgroud)

c valgrind

18
推荐指数
1
解决办法
1万
查看次数

在C++中销毁类时是否销毁了引用属性?

假设我有一个C++类,其属性是一个引用:

class ClassB {
    ClassA &ref;
public:
    ClassB(ClassA &_ref);
}
Run Code Online (Sandbox Code Playgroud)

当然,构造函数是这样定义的:

ClassB::ClassB(ClassA &_ref) : ref(_ref) { /* ... */ }
Run Code Online (Sandbox Code Playgroud)

我的问题是:当一个类'ClassB'的实例被销毁时,'ClassB :: ref'引用的对象是否也被销毁?

c++ attributes reference class destroy

16
推荐指数
2
解决办法
5508
查看次数

如何使用QColumnView显示多列数据

我想在QColumnView中的多列中显示数据.我正在使用Qt Creator和Qt 4进行开发.

考虑一个地址簿应用程序,其中您有多个组:组1,组2等.您的联系人可以属于任何这些组.

Group 1:
    John Smith
    Pocahontas
Group 2:
    Chief Powhatan
Group 3:
    ...
Run Code Online (Sandbox Code Playgroud)

当选择第一列中的组时,第二列将显示该组中的所有联系人,并且当选择联系人时,其个人信息将显示在第三列中.

我尝试了以下内容(基于Qt文档中的示例):

QStringList strList1;
strList1 << "Group 1" << "Group 2" << "Group 3";

strListM1 = new QStringListModel(); // Previously declared as QStringListModel *strListM1
strListM1->setStringList(strList1);
ui->columnView->setModel(strListM1);
Run Code Online (Sandbox Code Playgroud)

但是,我无法弄清楚如何添加更多列,并在第一列中添加联系人姓名作为这些组的子项.

我怎样才能做到这一点?我怎样才能动态添加列和行(而不是像上面那样使用QStringList,或者行的任何其他类似方法)?

c++ qt qt4 qt-creator

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

c++ ×2

attributes ×1

c ×1

class ×1

destroy ×1

qt ×1

qt-creator ×1

qt4 ×1

reference ×1

valgrind ×1