title: Why my C++ class definition fails?
body: <p>main.cpp</p>
  
  <pre><code>#include &lt;iostream&gt;
  #include "Burrito.h"
  
  using namespace std;
  
  int main(){
    Burrito b;
    return 0;
  }
  </code></pre>
  
  <p>Burrito.h</p>
  
  <pre><code>#ifndef BURRITO_H
  #define BURRITO_H
  
  class Burrito{
      public:
        Burrito();
  };
  
  #endif
  </code></pre>
  
  <p>Burrito.cpp</p>
  
  <pre><code>#include "Burrito.h"
  #include &lt;iostream&gt;
  
  Burrito::Burrito(){
  
  }
  </code></pre>
  
  <p>Compile &amp; Link :</p>
  
  <pre><code>lzsb$ g++ main.cpp -o main
  Undefined symbols for architecture x86_64:
    "Burrito::Burrito()", referenced from:
        _main in ccVpCr0z.o
  ld: symbol(s) not found for architecture x86_64
  collect2: ld returned 1 exit status
  lzsb$ 
  </code></pre>
  
  <p>Platform:</p>
  
  <pre><code>Mac OS 10.6.8
  
  G++ : i686-apple-darwin10 --with-gxx-include-dir=/usr/include/c++/4.2.1
  </code></pre>