c++ - init_priority attribute on variables in static libs -


this new question after long rant. problem here is, have global vector<base*> vobjs in main application , got derived objs in each static lib linked application. if specify vobjs have init_priority of 101 , each obj in static libs have say... 1000, guaranteed vobjs constructor called before objs in static libs? help.

let me echo other responses might want reconsider using globals this. 1 possible (and i'm sure still flawed) improvement @ least removes need init priority.

instead of using global vector, create function returns reference static local. c++ rules make sure function static local initialized @ latest first use, don't have worry vector not being initialized.

vector<libinfo*>& get_gvlibinfo() {     vector<libinfo*> gvlibinfo;     return gvlibinfo; } 

then registration looks like:

vector<libinfo*>& get_gvlibinfo();  void reglib() {     get_gvlibinfo().push_back(this); } 

Comments

Popular posts from this blog

ASP.NET/SQL find the element ID and update database -

jquery - appear modal windows bottom -

c++ - Compiling static TagLib 1.6.3 libraries for Windows -