Привет всем, что я стараюсь, чтобы исправить эти несколько ошибок ниже.Код C ++ взят из библиотеки Arduino, которую я хотел преобразовать в Visual C ++ dll для использования в одном из моих приложений на C #.
В этих областях есть ошибки:
void AES::do_aes_encrypt(BYTE *plain,int size_p,BYTE *cipher,BYTE *key, int bits, BYTE ivl [N_BLOCK]){
calc_size_n_pad(size_p);
BYTE plain_p[get_size()];
padPlaintext(plain,plain_p);
int blocks = get_size() / N_BLOCK;
set_key(key, bits) ;
cbc_encrypt(plain_p, cipher, blocks, ivl);
}
" BYTE plain_p [get_size ()]; " имеет ошибку " 'this' нельзя использовать в константном выражении ".
string AES::letsDecrypt(BYTE *key, string msg, AES aes) {
char data_decoded[200];
char iv_decoded[200];
char temp[200];
BYTE out[200];
aes.set_key(key, sizeof(key));
msg.toCharArray(temp, 200);
int b64len = base64_decode(data_decoded, temp, msg.length());
string(iv_Encoded).toCharArray(temp, 200);
base64_decode(iv_decoded, temp, string(iv_Encoded).length());
aes.do_aes_decrypt((BYTE *)data_decoded, b64len, out, key, 128, (BYTE *)iv_decoded);
char message[msg.length()];
char* msgBase64 = (char *)out;
base64_decode(message, (char *)out, msg.length());
return std::string(message);
}
" msg.toCharArray (temp, 200); " содержит ошибку " class" std :: basic_string, std :: allocator> "не имеет члена" toCharArray "".
Другая ошибка в том же коде выше " char message [msg.length ()]; " имеет ошибку " выражение должно иметь постоянное значение ".
Справка была бы отличной, поскольку я новичок в C ++!