0
CRSAPublicKey* publicKey;

const CRSAPublicKey &iRSAPublicKey= *publicKey;

iEncryptor = CRSAPKCS1v15Encryptor::NewL(iRSAPublicKey);

我的问题在第二行,因为我必须传递对函数的引用,因为我正在从指针创建引用。

我不知道我这样做是对还是错。第一行编译但在第二行它崩溃了。

4

3 回答 3

4

如果您需要将 rfeference 传递给函数,则无需创建中间命名值:

CRSAPublicKey* publicKey = .... // initialise pointer somehow

iEncryptor = CRSAPKCS1v15Encryptor::NewL( * publickey );
于 2009-06-16T07:50:54.450 回答
2

您正在声明publicKey变量,但您从未初始化它。使用未初始化的指针很容易导致 KERN-EXEC 3。

于 2009-06-16T07:39:12.020 回答
0

为避免混淆,您应该只在成员变量前加上 i。它很重要,因为它允许您确保以适当的方式销毁它们(即在析构函数中而不是清理堆栈中)。

关于主题,您的第一行代码应该大致如下:

CRSAPublicKey* publicKey=CRSAPublicKey::NewLC();
于 2009-08-04T12:54:42.657 回答