As far as the order I would choose, I would choose the order of inclusion, or of declaration, because its the most obvious.
You don't include source files, and order of construction within a sourcefile is very well-defined. When working with static constructor code (e.g., all code that get's executed before main()), you have to make sure everything's constructed in the right order. So create accessors for your global variables (you shouldn't use global variables anyway) so you can ensure construction order. And this goes for ANY imperative language, not just C++.
The only point Jare makes is that he's an arrogant and offensive \.
No, you just don't seem to be able to take any form of critisism. It shows from almost every reply in your thread. And quite frankly, that makes YOU the arrogant person, not others.
Honestly, his comment was rather insulting, and I don't really have to prove anything about my programming skills.
No you don't, and nobody's asking you to. But you seem to think that you do.
because I've most likely been programming in C++ longer than you have, on a much higher scale than you have. Kthxbye.
Another typical arrogant remark. Btw, experience alone doesn't make you a good programmer. DISCLAIMER: I'm not saying that you are a lousy programmer (somehow I think this disclaimer is a necessary, given your earlier reactions), I'm just saying that "I've been coding way longer than you are" is just not a good argument.
However, the fact that you didn't knew this bug could happen and that you didn't take that into account in your design, and by the way you solved it, I can't help to wonder how good a programmer you really are, or how much so called experience you're actually having with C++. You just keep rambling about how it's C++'s fault. No, it's not the language's fault, it's your fault.
As far as "sweeping a broken design under the rug goes". Let me put it this way. My original code didn't even compile on the latest microsoft compiler. And by that, I don't mean it would report programming errors, I mean I got several "fatal compiler error" messages doing it. I've had to resort to some degree of code bastardization to get Visual C++ to compile it at all. As far as I'm concerned, the compiler is broken, so don't blame me for refusing to make my code crappier.
I'm sorry but this simply has got nothing to do with the problem you where having. Don't make arguments that have no relevance to the discussion.