将对象从函数C 中的MAIN更改

change object from main in a function c++

本文关键字:中的 MAIN 更改 函数 对象      更新时间:2023-10-16

我想通过调用函数来获取rsaprivate键的值。因为我必须在主函数中使用其他位置,但我无法使其正常工作。我尝试过有指针以在功能中进行rsaptrive。

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

表达必须具有类型

通过此问题的评论,这是解决方案。

在调用功能为rsaprivate时,将*从rsaprivate中删除,然后将.更改为->