C++ Simplecrypt让我的QT应用程序在OS X Mountain Lion上崩溃,但在Windows上工作得非常完美
我用它来加密和解密QT应用程序(c++)中的一些基本内容。 在Windows7上,一切都可以很好地编译,并且工作正常。 在Mac OS X Mountain Lion上,应用程序在启动过程中崩溃,出现以下错误:C++ Simplecrypt让我的QT应用程序在OS X Mountain Lion上崩溃,但在Windows上工作得非常完美,c++,qt,encryption,cross-platform,osx-mountain-lion,C++,Qt,Encryption,Cross Platform,Osx Mountain Lion,我用它来加密和解密QT应用程序(c++)中的一些基本内容。 在Windows7上,一切都可以很好地编译,并且工作正常。 在Mac OS X Mountain Lion上,应用程序在启动过程中崩溃,出现以下错误: ASSERT: "i >= 0 && i < size()" in file ./../QtSDK/Desktop/Qt/4.8.1/gcc/include/QtCore/qbytearray.h, line 414 The program has unex
ASSERT: "i >= 0 && i < size()" in file
./../QtSDK/Desktop/Qt/4.8.1/gcc/include/QtCore/qbytearray.h, line 414
The program has unexpectedly finished.
有可能让Simplecrypt在Mac OS X Mountain Lion上工作吗
谢谢你调查这件事 关于断言,在使用QByteArray时,它似乎是一个数组外异常,无法捕获 导致崩溃的代码行是什么?你试过调试看看会发生什么吗
预编译期间的警告仅表明Qt 4.8不支持MacOS X Mountain Lion,因此可能会发生一些错误和不必要的行为。我使用的代码如下:SimpleCrypt crypto(Q_UINT64_C(0x0ca94c63e6ee6d));还有:crypto.decryptoString(loadSettings(“pwd”),“”)这很奇怪,当我再次编译它时,一切都正常:D.当它再次发生时,我会报告回来,因为我没有更改代码中的任何内容…返回类型是
loadSettings
?QByteArray还是QString?如果是QByteArray,可能是这个函数中的错误。你应该调试你的程序来检查发生了什么。返回类型of loadSettings是一个QString。当我发现如何进行调试时,我会进行一些调试:)。这个警告对我来说似乎很容易理解。似乎那个节目还不适合山狮队。
../../QtSDK/Desktop/Qt/4.8.1/gcc/include/QtCore/qglobal.h:328:6: warning: #warning "This version of Mac OS X is unsupported"