Working example of accessing non-static member from static method
===

I was studying ns-3 tutorial http://www.nsnam.org/docs/release/3.13/tutorial/singlehtml/index.html#example-code . I cannot understand the following code snippet:

    class MyObject : public Object
    {
    public:
      static TypeId GetTypeId (void)
      {
        static TypeId tid = TypeId ("MyObject")
           .SetParent (Object::GetTypeId ())
           .AddConstructor<MyObject> ()
           .AddTraceSource ("MyInteger",
                         "An integer value to trace.",
                          MakeTraceSourceAccessor (&MyObject::m_myInt))
           ;
         return tid;
      }

      MyObject () {}
      TracedValue<int32_t> m_myInt;
    };

As I understand,  MyObject::m_myInt is an access to non-static class member m_myInt from static method and & takes address of this member. This code is successfully compiled and executed. How can it be possible? What instance of class does the static method use?
