I have the following 2 files:
Code:
// File: DummyClass.h
class DummyClass {
  public:
    void doNothing() {
    }
};

// File: MyMain.cpp
#include "dummyclass.h"

class MyMainClass {
  public:
    static DummyClass *dumbClass;
   
    MyMainClass(DummyClass dc) {
      dumbClass = dc;
    }
};

int main() {
  MyMainClass myClass(new DummyClass);
  myClass->dumbClass->doNothing();
  return 0;
}
It generates the following linking error:
error LNK2001: unresolved external symbol "public: static class DummyClass * MyMainClass::dumbClass" (?dumbClass@Edge@@2PAVDummyClass@@A)

If I remove static, it works just fine.