我想通过调用函数来获取rsaPrivate键的值..因为我必须在main函数中的其他位置使用它,但我不能使它工作。我已尝试在函数中使用和不使用rsaPrivate指针。
int main(int argc, char* argv[]) {
CryptoPP::RSA::PrivateKey rsaPrivate;
getKeysFromPfx(&rsaPrivate);
}
void getKeysFromPfx(CryptoPP::RSA::PrivateKey *rsaPrivate) {
try
{
rsaPrivate.BERDecodePrivateKey(queue, false /*paramsPresent*/, queue.MaxRetrievable());
// BERDecodePrivateKey is a void function. Here's the only check
// we have regarding the DER bytes consumed.
assert(queue.IsEmpty());
bool valid = *rsaPrivate.Validate(prng, 3);
if (!valid)
std::cerr << "RSA private key is not valid" << std::endl;
catch (const Exception& ex)
{
std::cerr << ex.what() << std::endl;
exit(1);
}
}
错误出现在rsaPrivate所说的函数中
表达式必须具有类类型
答案 0 :(得分:0)
通过这个问题的评论,这是解决方案。
从rsaPrivate中删除*
,并在调用rsaPrivate函数时将.
更改为->
。