#56 от 2007-12-17 14:45:12Еще одна закавыка Managed C++Вспомнил вот, как несколько дней назад мучился с такой вот проблемой: String * SomeClass::someFuction(){ void *buf = берется откуда-то; typedef ULONG NEW_TYPE __gc[]; return *(NEW_TYPE *)buf; } Как объявить указатель на managed массив (а не массив указателей на ULONG) - это отдельная сказка, ее завершение вы видите выше. Но этот код все равно не работает. Выдет, зараза, exception следующего содержания: italamp светильники . ЖД билеты онлайн - ж д билет онлайн. Заказ железнодорожных билетов. . Object reference not set to an instance of an object версия для печати и нагло так показывает на заголовок функции. Поиски ошибки в начале функции ничего не дали. Еще бы: ошибка-то была в конце.
Да будет вписан в анналы (так и хочется написать с одним "н") следующий код (правильный!). String * SomeClass::someFuction(){ void *buf = берется откуда-то; type rInt __gc[] = new ULONG __gc[bufLength]; for (DWORD i=0;i<bufLength;i++) rInt[i] = *(ULONG *)&buf[i*sizeof(ULONG)]; return rInt; }
|