我正在开发 QNX / Blackberry 10 应用程序。我的应用程序最近开始崩溃。插入跟踪语句使我相信崩溃是在以下情况下发生的。
我的客户端应用程序调用一个内部函数,将一个对 C++ 类对象的引用传递给它。传递的 C++ 类如下所示:
class ALPeerData
{
public:
ALPeerData ();
virtual ~ALPeerData ();
int _peerId;
ALModelType _modelType;
std::wstring _computerName;
std::wstring _uuidDevice;
. . .
};
当我在被调用函数返回后访问_computerName
or成员变量时发生崩溃。_uuidDevice
被调用函数中的跟踪显示ALPeerData
对象成员变量与预期的一样。因此,_computerName.size()
在函数内返回合理的值,例如 10,但在客户端应用程序中调用时返回大约 23 MB 的大小。 The ALPeerData
对象似乎已损坏。
出于文档原因,我在此处列出了 qcc -V 输出:
user:~$ qcc -V
cc: targets available in /home/bbndk/host_10_3_1_12/linux/x86/etc/qcc:
4.6.3,gcc_ntoarmv7le_gpp
4.6.3,gcc_ntox86_gpp
4.6.3,gcc_ntoarmv7le_cpp-ne
4.6.3,gcc_ntoarmv7le_cpp
4.6.3,gcc_ntox86 (default)
4.6.3,gcc_ntoarmv7le
4.6.3,gcc_ntox86_cpp-ne
4.6.3,gcc_ntox86_cpp
4.8.3,gcc_ntoarmv7le_gpp
4.8.3,gcc_ntox86_gpp
4.8.3,gcc_ntoarmv7le_cpp-ne
4.8.3,gcc_ntoarmv7le_cpp
4.8.3,gcc_ntox86
4.8.3,gcc_ntoarmv7le
4.8.3,gcc_ntox86_cpp-ne
4.8.3,gcc_ntox86_cpp
user:~$
我的ALPeerData
课可能有什么问题?