Идентичные статические и глобальные переменные в библиотеке DLL - PullRequest
0 голосов
/ 24 января 2019

Моя проблема в том, что здесь три библиотеки, две динамические библиотеки (DLL A и DLL B) и одна статическая библиотека C. Есть несколько глобальных переменных и статических переменных, определенных в C, и обе библиотеки DLL связаны со статической библиотекой C. Вопрос в том, когда A и B загружаются одним процессом, что случилось с этими переменными? у каждой DLL будет свой экземпляр, или у них будет один и тот же.

1 Ответ

0 голосов
/ 24 января 2019

Если обе DLL не экспортируют эту переменную, ничего особенного не происходит - обе библиотеки имеют свою собственную внутреннюю копию.Если оба экспортируют переменную, у них все еще есть свои собственные копии, но программа, использующая обе библиотеки DLL, должна будет выбрать.

Вопрос помечен C ++, но это действительно ответ Win32.

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