Like Java and C#, can I create object of a class within the same class?

```
/* State.h */
class State{
  private:
    /*...*/
    State PrevState;
};

```

Error:

```
field 'PrevState' has incomplete type

```