title: How to fix 'Segmentation fault (core dumped)' when trying to implement Factory Pattern
body: <p>I'm trying to implement the factory pattern in my code.</p>
  
  <p>I tried to create an object "Koerper schienbein" and initialized it with </p>
  
  <pre><code>schienbein.setRadius(0.2);
  schienbein.setLaenge(1.0);
  schienbein.setPosition(0, 0, 1.0);
  schienbein.erzeugeBody(world); 
  </code></pre>
  
  <p>Therefore I'm assuming that there is no error within the class "Koerper".</p>
  
  <p>This is my code for my factories. </p>
  
  <p>Koerperfabrik.h:</p>
  
  <pre><code>class Koerperfabrik {
  
  public:
      Koerper *erzeugeKoerperteil(dWorldID welt);
  
  protected:
      virtual Koerper *erzeugeKoerper(dWorldID welt) { };
  
  };
  </code></pre>
  
  <p>Koerperfabrik.cpp:</p>
  
  <pre><code>Koerper *Koerperfabrik::erzeugeKoerperteil(dWorldID welt) {
      Koerper *koerper = new Koerper ();
      koerper = erzeugeKoerper(welt);
  
      return koerper;
  }
  </code></pre>
  
  <p>Schienbeinfabrik.cpp:</p>
  
  <pre><code>Koerper *Schienbeinfabrik :: erzeugeKoerper(dWorldID welt) {
      Koerper* schienbein = new Koerper ();
      (*schienbein).setRadius(0.2);
      (*schienbein).setLaenge(1.0);
      (*schienbein).setPosition(0, 0, 1.0);
      (*schienbein).erzeugeBody(welt);
  
      return schienbein;
  }
  </code></pre>
  
  <p>Simulation.cpp:</p>
  
  <pre><code>void erzeugeFussundSchienbein() {
      Koerperfabrik schienbeinfabrik = Schienbeinfabrik ();
      schienbein = schienbeinfabrik.erzeugeKoerperteil(world);
  }
  </code></pre>
  
  <p>When I try to access (*schienbein).getBody() I get the error "Speicherzugriffsfehler (Speicherabzug geschrieben)" which translates to "Segmentation fault (core dumped)".</p>
  
  <p>I hope there is somebody who can help me. </p>