У меня есть куча файлов cpp (не должно быть файлов заголовков), которые содержат статические переменные. Эти статические переменные, кажется, игнорируются моим компилятором Visual Studio 2008 - как я могу это исправить?
Подробнее:
- У меня есть абстрактный класс со статическим полем allInstances; когда создается «конкретный» экземпляр моего класса (это происходит, когда создаются экземпляры статических переменных, которые находятся в файлах cpp), указатель на него push_back'ируется во все экземпляры.
- Файлы Cpp содержат классы, производные от моего абстрактного класса; их реализации должны оставаться в файлах cpp, поскольку они предназначены только для вызова через allInstances.
- Мои файлы cpp абстрактного класса находятся в папке (проекте), которая компилируется в статической библиотеке.
- Эта статическая библиотека используется проектом, который компилирует xll
Когда файлы cpp находились в проекте xll, все было в порядке. Но когда я переместил файлы cpp в отдельную папку (это необходимо сделать, потому что excel теперь не единственный интерфейс), мои статические переменные больше не создаются.
У меня есть много этих файлов cpp, и включать их все в каждый из проектов xll, exe, pyd, dll и т. д. было бы нехорошо....
Есть идеи? Спасибо заранее.
volatile
-обработать объекты. - person ysap   schedule 25.05.2012