Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

перевод значений неуправляемого массива в управляемый - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Не отображается значёк "Отладка" в Visual Studio 2010 http://www.cyberforum.ru/cpp-beginners/thread930974.html
Привет всем.До Visual'ки работал в code-blocks, сегодня решил запустить visual studio, написал код, а как начать компиляцию- не знаю.F5- "не катит".Вроде всё сохранил... Скрин прилагается. И да:...
C++ Вложенные циклы for (int i = 1; i < 10; ++i) { for (int j = 1; j <= i; ++j) cout << "*"; cout << "\n"; } Имеется такой вложенный цикл, при отладке смотрел за состоянием переменных, не могу понять... http://www.cyberforum.ru/cpp-beginners/thread930969.html
C++ Перегрузка операторов
Всем привет. Предположим, что нужно перегрузить оператор вывода << для какого-то класса, определенного мной. Этот оператор должен выводить приватные члены класса, поэтому его можно определить его как...
C++ Оптимизация программы
Нужно, чтобы программа случайным образом придумывала число от 1 до 32767 и печатала его цифры через 2 пробела. (Например, 4236 печатает 4 2 3 6). Программу написал, все работает, но не нравится...
C++ Вылет программы после завершения http://www.cyberforum.ru/cpp-beginners/thread930926.html
Добрый день. Сегодня решил начать изучение языка программирования. Нашел учебник для чайников, там построение задач ведется с использованием GNU C++. Данную программу я не нашел (возможно, плохо...
C++ Выбрать из одномерного массива А элементы, произведение которых на их номер превышает число 10 #include <conio.h> #include <iostream> using namespace std; void main() { const int N=10; //Размер обычного массива можно определить константой int x=10; int... подробнее

Показать сообщение отдельно
hamster28
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 41
01.08.2013, 10:40  [ТС]
IGPIGP,
совем запутался.
pin_ptr<> "передает управляемый массив неуправляемой функции"
а что мне нужно изначально.
есть неуправляемый массив, его забить в битмап.

для этого
C++
1
2
3
4
5
6
7
8
9
10
11
12
System::Drawing::Rectangle rect = System::Drawing::Rectangle(0,0,scanBitmap->Width,scanBitmap->Height);
System::Drawing::Imaging::BitmapData^ scanBitmapData = scanBitmap->LockBits( rect, System::Drawing::Imaging::ImageLockMode::ReadWrite, scanBitmap->PixelFormat );
 
IntPtr ptr = scanBitmapData->Scan0;
 
int bytes = scanBitmapData->Stride * scanBitmap->Height;
array<Byte>^rgbValues = gcnew array<Byte>(bytes);
 
//потом преобразования над управляемым массиом rgbValues и запись его обратно в неуправляемую память
System::Runtime::InteropServices::Marshal::Copy (rgbValues, 0, ptr, bytes );
scanBitmap->UnlockBits(scanBitmapData);
scan->DrawImage(scanBitmap, 0, 0, pictureBox->Width, pictureBox->Height);
в преобразованиях я управляемому массиву с помощью цикла присваиваю значения неуправляемого массива (матрицы). и это долго.
нужно как-то эту матрицу по-другому засунуть в битмап.
то ли по-другому переводить значения неуправляемого массива в rgbValues, то ли сразу его как-то копировать в ptr.
?????
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru