Can the compiler deal with the initialization order of static variables correctly if there is dependency? For example, I have
a.h
:
struct A { static double a; };
a.cpp
:
#include "a.h"
double A::a = 1;
b.h
:
struct B { static double b; };
b.cpp
:
#include "b.h"
#include "a.h"
double B::b = A::a;