Чтение массива <Byte>в неуправляемом с ++ - PullRequest
2 голосов
/ 03 октября 2011

У меня есть управляемый класс C ++ с методом, сигнатура конструктора которого:

tools_package_net::PackageInfo::PackageInfo(array<Byte>^ bytes)

Внутри конструктора я хочу вызвать метод для неуправляемого класса с подписью:

bool PackageInformation::ReadProject(const unsigned char *data, size_t size)

Итак, я хочу вызвать «ReadProject», передавая данные из моего «байтового» массива. «Размер» я могу передать используя «bytes.Length». Но как я могу получить сами данные? Могу ли я просто ввести первый элемент & bytes [0] (ala std :: vector)?

Любая помощь будет принята с благодарностью.

1 Ответ

3 голосов
/ 03 октября 2011
cli::pin_ptr<unsigned char> pb = &(bytes[0]);
unsigned char* p = static_cast<unsigned char*>(pb);

Согласно этой книге .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...