Memory leaks 将QString作为结构(不是QObject派生类)的成员是否有效
我的代码中有以下声明:-Memory leaks 将QString作为结构(不是QObject派生类)的成员是否有效,memory-leaks,structure,qstring,Memory Leaks,Structure,Qstring,我的代码中有以下声明:- typedef struct Token { QString name; enum tokenType type; } Token; 它显然是编译和工作的。我没有检查,但我相当确定,在创建标记时,我总是显式初始化名称字段,如果我不这样做,它可能无法工作。然而,我担心当令牌被销毁时,可能会出现内存泄漏。QString的引用计数是如何递减的?如果没有,我是否可以在销毁令牌时通过将name显式设置为NULL来强制执行该操作?如果复制令牌,会发生什么情况 从理
typedef struct Token {
QString name;
enum tokenType type;
} Token;
它显然是编译和工作的。我没有检查,但我相当确定,在创建标记时,我总是显式初始化名称
字段,如果我不这样做,它可能无法工作。然而,我担心当令牌
被销毁时,可能会出现内存泄漏。QString
的引用计数是如何递减的?如果没有,我是否可以在销毁令牌时通过将name
显式设置为NULL来强制执行该操作?如果复制令牌
,会发生什么情况
从理论上讲,使用带有公共成员的QOBject派生类而不是结构会更好,但我不需要QOBject的其他功能,而且在一个频繁创建和销毁的结构中使用QOBject会带来很大的开销