Почему вам нужно использовать C ++ "data_seg" - PullRequest
1 голос
/ 13 августа 2010

Когда я отследил один открытый исходный код, я увидел, что у кого-то есть следующий код

#prama data_seg(".XXXX")
static char *test=NULL;
FILE *f1;
#prama data_seg()

Однако даже после проверки http://msdn.microsoft.com/en-us/library/thfhx4st(VS.80).aspx, Я до сих пор не уверен, зачем нам это нужно, может кто-нибудь помочь мне понять эту часть?

спасибо

1 Ответ

3 голосов
/ 14 августа 2010

Обычно это делается для обмена данными, предназначенными для этого сегмента. Код, который у вас есть выше, обычно помещается в DLL. Вы также используете файл .def, который указывает, что сегмент «.XXXX» будет иметь атрибут «SHARED».

Когда вы делаете все это, данные в этом сегменте распределяются между всеми процессами, которые загружают DLL, поэтому эти переменные распределяются между всеми этими процессами.

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