变量未在此范围内声明

时间:2015-01-29 19:48:34

标签: c++

很抱歉,如果这是一个非常基本的问题。我是一个Java人,也是CPP的新手。按照逻辑,一切看起来都很好。但编译器仍然抛出错误

结果未在此范围内声明”可能是什么原因?

导致错误的行

  ns1__changePinTestResponse* result= soap_new_ns1__ChangePinResponse(this);

这是我的代码。

int ATLServerService::changePinTest(_ns1__changePinTest *ns1__changePinTest, _ns1__changePinTestResponse *ns1__changePinTestResponse)
{
    LOG_DEBUG_MSG("ATLServerService::changePassword()");
    char* accountID = (char*)ns1__changePinTest->accountID.c_str();
    int accountPin = ns1__changePinTest->accountPin;
    char* newPassword = (char*)ns1__changePinTest->newPassword.c_str();
    char* yourSerialNumber = (char*)ns1__changePinTest->yourSerialNumber.c_str();
    tfaddress transactionFileAddress;

    int returnValue = 0;
    returnValue = Account::changePassword(toteGateway, myGdi,accountID, accountPin,
                                          newPassword, yourSerialNumber, &transactionFileAddress);

    ns1__changePinTestResponse* result= soap_new_ns1__ChangePinResponse(this);

    result->code = returnValue;
    if (returnValue == ESUCCESS) {
      result->message = &SUCCESS;
      result->transactionFileAddress = transactionFileAddress;
    } else {
      result->message =  &ERROR;
    }

    ns1__changePinTestResponse->changePinTestReturn= result;
    return SOAP_OK;
}

1 个答案:

答案 0 :(得分:4)

您缺少第一个下划线。它应该是:

_ns1__changePinTestResponse

ns1__changePinTestResponse