2013-04-22 161 views
-2

頭文件是這樣的:調用從類C++函數

#include "Lib110ct.h" 
class Circle 
{ 
protected: 
    double mx, my, mdx, mdy, mradius; 
public: 
    Circle(){} 
    Circle(double x,double y,double dx,double dy,double rad):mx(x),my(y),mdx(dx),mdy(dy),mradius(rad){} 
    void setPos(double x, double y){mx=x;my=y;} 
    void setDir(double dx, double dy){mdx=dx; mdy=dy;} 
    void setRadius(double rad){mradius=rad;} 
    double getX(){return mx;} 
    double getY(){return my;} 

    void draw(Turtle * t); 
    void clear(Win110ct& win); 
    void move(); 
    bool collides(Circle & c); 
}; 

#include "shape.h" 

int main(int argc, char** argv) 

    { 
     Win110ct win; 
     Turtle * t = win.getTurtle(); 
      Circle Circle; 
      Circle.setPos(100, 300); 
      Circle.setRadius(12); 
      getX(); 
      getY(); 
      Circle.draw(t); 

     return 0; 
    } 

它給我的錯誤信息是:

C:\用戶\ Oluwaseun \文檔\ 110ct \ challenge2 \ programming \ programming \ main.cpp | 13 |對`Circle :: draw(Turtle *)'|的未定義引用

我在做什麼錯?

+4

有你定義'draw(Turtle *)'? – 2013-04-22 23:21:51

+0

我不明白 – 2013-04-22 23:32:05

+0

他說,你已經聲明瞭一個函數'void draw(Turtle *)',但是你沒有在示例中定義函數的代碼。 – JBentley 2013-04-22 23:35:10

回答