[C++] хранение хендлов  
Автор Сообщение

0
Сообщение [C++] хранение хендлов

привет. нужна помощь экпертов по с++.

будет > 5 хендлов и их надо где-то хранить. по 1 хендлу в переменной - не вариант.

p.s. векторы юзать нельзя, да и стл вообще



17 июл 2013, 15:51
Профиль

-1
Сообщение [C++] хранение хендлов

ага



17 июл 2013, 16:56
Профиль

0
Сообщение [C++] хранение хендлов

массив? одно/двусвязный список?



17 июл 2013, 18:58
Профиль

0
Сообщение [C++] хранение хендлов

PunxNotDead писал(а):

массив?

как ты создашь массив указателей на void?

 

PunxNotDead писал(а):

одно/двусвязный список?

 

NoNameNoSkill писал(а):

p.s. векторы юзать нельзя, да и стл вообще

 

было бы все так просто - я бы не спрашивал

 

upd. решил проблему. с помощью sizeof узнал размер хендла (треда, за другие не говорю) в байтах. оказалось 4 байта. привел void * к DWORD *, поместил в массив DWORD * ов. потом снова привел к void *, когда понадобился хендл. все работает



17 июл 2013, 19:07
Профиль

0
Сообщение [C++] хранение хендлов

Нет под рукой компилера сейчас, но разве нельзя как-то через typedef?

Структура из одного поля типа void *?

 

И причем тут stl к твоей собственной реализации списка?

 



17 июл 2013, 19:27
Профиль

1
Сообщение [C++] хранение хендлов

Код:
void* harr[10];

Вот тебе массив указателей.

Указатель - это адрес в памяти у него всегда один размер, а на что он указывает это уже тебе решать.



17 июл 2013, 19:41
Профиль WWW

0
Сообщение [C++] хранение хендлов

NoNameNoSkill писал(а):

как ты создашь массив указателей на void?

Собственно ддух уже всё написал. Только учти, что размер указателя зависят от разрядности системы. Мало ли что.



17 июл 2013, 20:12
Профиль

0
Сообщение [C++] хранение хендлов

с хранением хендлов уже разобрался, но DDUH'у спасибо :love

 

теперь другая проблема

#15

 

полагаю, что дело в сторонней системе сборки. мб кто-нибудь сталкивался с подобным?



17 июл 2013, 20:45
Профиль

0
Сообщение [C++] хранение хендлов

NoNameNoSkill писал(а):

с хранением хендлов уже разобрался, но DDUH'у спасибо :love

теперь другая проблема

#665

полагаю, что дело в сторонней системе сборки. мб кто-нибудь сталкивался с подобным?

С++ библиотеку не линкуешь что-ли ?



17 июл 2013, 21:20
Профиль WWW

0
Сообщение [C++] хранение хендлов

какую именно? stdlib?



17 июл 2013, 21:24
Профиль

0
Сообщение [C++] хранение хендлов

Линковать нужно с msvcprt.lib (release) или msvcprtd.lib (debug).



17 июл 2013, 21:25
Профиль WWW

0
Сообщение [C++] хранение хендлов

добавил эту библиотеку. ошибка при линковке осталась



17 июл 2013, 21:35
Профиль

0
Сообщение [C++] хранение хендлов

NoNameNoSkill писал(а):

добавил эту библиотеку. ошибка при линковке осталась

А чем компилируешь то? У тебя что не стандартный проект MSVC ?



17 июл 2013, 21:41
Профиль WWW

0
Сообщение [C++] хранение хендлов

нет. как я уже говорил, сторонняя система сборки. она использует компилятор и линковщик visual c++

не уверен, что у нее есть название



17 июл 2013, 21:45
Профиль

0
Сообщение [C++] хранение хендлов

NoNameNoSkill писал(а):

нет. как я уже говорил, сторонняя система сборки. она использует компилятор и линковщик visual c++

не уверен, что у нее есть название

Тогда нужно смотреть почему не линкует cl.exe, возможно не прописаны пути и т.д.

Вариант посмотреть пример линковки из командной строки для cl.exe



17 июл 2013, 21:56
Профиль WWW

0
Сообщение [C++] хранение хендлов

забавно то, что malloc и free тоже вызывают ошибки при линковке

более того, вектор из stl'а я не использовал именно по этим причинам. вектор тоже вызывает ошибки при линковке

 

upd. с параметрами линковки все нормально, кажется



17 июл 2013, 22:26
Профиль
Начать новую тему Ответить на тему


Перейти:  

На сайте использованы материалы, принадлежащие Blizzard Entertainment. Копирование материалов возможно только c разрешения портала. В противном случае это будет называться уже другим словом.
Рейтинг@Mail.ru