#include<iostream.h>
#include<math.h>
#include<string>
#include <stdlib.h>

const MaxPointNumbers=3;//描述点的最大值
class Point//定义一个Point类
{
   private:
    float x;
    float y;//定义对象x,y用来表示坐标
       char name[20];    // string是C++支持的字符串类型,直接存储一个字符串,比char*方便
       char color[15];
    int weight;
   public:
   void input();//声明一个输入函数
   float get_x(){return x;}//返回x的值
   float get_y(){return y;}//返回y的值
   //构造函数
   Point(char *tname,char tcolor[],int tweight)
   {
        weight= tweight;
        strcpy(name, tname);
        strcpy(color,tcolor);
   }
 // 拷贝构造函数
    Point(const Point& point) //对象的常引用
    {
        weight = point.weight;
        strcpy(name, point.name);
        strcpy(color,point.color);
     }
}
void setName(char *tname)
    {
        strcpy(name,tname); // 成员函数在类内部实现
    }
    char* getName() { return name;}
    void setWeight(int tweight);
    void setColor(char *s) { strcpy(color,s); }
    char *getColor() { return color; }
    int getWeight();
 void Size();
    void selfintro();
void Point::setWeight(int tweight)  // 成员函数在类外部实现,需要Point::修饰符
{
    weight = tweight;
}
int Point::getWeight()
{
    return weight;
}
void Point::size()
{
    cout<<"单位1"<<endl; // 哇,点的大小都是一样的!
}
void Point::input()//定义输入坐标的函数
{
 cin>>x>>y;
}

class line:public Point//派生类line
{
public:
 void al_line(Point&,Point&,Point&);//声明一个计算三条边的函数
 float get_11() {return 11;}//返回11的值
 float get_12() {return 12;}//返回12的值
 float get_13() {return 13;}//返回13的值
private:
 float 11,12,13;//定义三条线段
};
void line::al_line(point& p1,point& p2,point& p3)//计算三条边的长度
{
  11=sqrt((p2.get_x()-p1.get_x())*(p2.get_x()-p1.get_x())+(p2.get_y()-p1.get_y()*p2.get_y()-p1.get_y()));
  12=sqrt((p3.get_x()-p1.get_x())*(p3.get_x()-p1.get_x())+(p3.get_y()-p1.get_y()*p3.get_y()-p1.get_y()));
  13=sqrt((p3.get_x()-p2.get_x())*(p3.get_x()-p2.get_x())+(p3.get_y()-p2.get_y()*p3.get_y()-p2.get_y()));
}

void Point::selfintro()
{
    cout<<"Hello, I am "<<name<<". I am "<<weight<<" g ";
 cout<<"My opsition is"<<(x,y)<<".";
    cout<<" I am "<<color<<"."<<endl;
    Size();
    if(11*11=12*12+13*13&&12*12=11*11+13*13&&13*13=11*11+12*12)
    cout<<"这三边可以构成直角三角形"<<endl;
 else
 cout<<"这三边不能构成直角三角形"<<endl;
}
void showDogInfo(Point tpoint)
{
    cout<<"Name: "<<tpoint.getName()<<" Color: "<<tpoint.getColor()<<endl;
    cout<<"Weight: "<<tpoint.getWeight()<<endl;
    cout<<"-------------------------------------------------------------"<<endl;
}
int main()
{
    Point point1("A点","Red",2),
    point2("B点","Dotted",1);
    point3("C点","Blue",5);
    Point point[NUMDOG];

    //point1.setName("A点");
    //point1.setweight(2);
    //point2.setName("B点");
    //point2.setweight(1);
 //point3.setName("C点");
 //point3.setweight(5);
    cout<<"Please introduce urself:"<<endl;
    point1.selfintro();
    point2.selfintro();
    point3.selfintro();
   
 
    char str[2];// 存放点的编号
    char str2[20];// 存放点的名字
    for(int i=0;i<NUMDOG;i++) {
        itoa(i+1,str,10); // 整数转化为字符串函数
        strcpy(str2,"Point");
        strcat(str2,str);
        point[i].setName(str2);
        //sprintf(str2,"Point%d",i+1); //需要包含stdio.h
        point[i].setWeight(rand()%10+1); // 这样狗的年龄就可以是随机的了
        point[i].setColor("yellow"); 
    }
    for (int i=0;i<NUMDOG;i++) showDogInfo(dog[i]); //dog[i].selfintro();

    return 0;
}

 

错误:

C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(34) : error C2628: 'Point' followed by 'void' is illegal (did you forget a ';'?)
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(36) : error C2065: 'name' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(40) : error C2065: 'color' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(45) : error C2039: 'setWeight' : is not a member of 'Point'
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(8) : see declaration of 'Point'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(47) : error C2065: 'weight' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(49) : error C2039: 'getWeight' : is not a member of 'Point'
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(8) : see declaration of 'Point'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(53) : error C2039: 'size' : is not a member of 'Point'
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(8) : see declaration of 'Point'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(70) : error C2059: syntax error : 'constant'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(70) : error C2238: unexpected token(s) preceding ';'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(72) : error C2065: 'point' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(72) : error C2065: 'p1' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(72) : error C2065: 'p2' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(72) : error C2065: 'p3' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(73) : error C2448: '<Unknown>' : function-style initializer appears to be a function definition
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(79) : error C2039: 'selfintro' : is not a member of 'Point'
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(8) : see declaration of 'Point'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(82) : error C2065: 'x' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(82) : error C2065: 'y' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(85) : error C2106: '=' : left operand must be l-value
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(85) : error C2106: '=' : left operand must be l-value
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(85) : error C2106: '=' : left operand must be l-value
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(92) : error C2039: 'getName' : is not a member of 'Point'
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(8) : see declaration of 'Point'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(92) : error C2039: 'getColor' : is not a member of 'Point'
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(8) : see declaration of 'Point'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(93) : error C2039: 'getWeight' : is not a member of 'Point'
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(8) : see declaration of 'Point'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(100) : error C2065: 'point3' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(101) : error C2065: 'NUMDOG' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(101) : error C2057: expected constant expression
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(101) : error C2466: cannot allocate an array of constant size 0
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(101) : error C2133: 'point' : unknown size
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(101) : error C2512: 'Point' : no appropriate default constructor available
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(110) : error C2039: 'selfintro' : is not a member of 'Point'
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(8) : see declaration of 'Point'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(111) : error C2039: 'selfintro' : is not a member of 'Point'
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(8) : see declaration of 'Point'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(112) : error C2228: left of '.selfintro' must have class/struct/union type
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(121) : error C2039: 'setName' : is not a member of 'Point'
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(8) : see declaration of 'Point'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(123) : error C2039: 'setWeight' : is not a member of 'Point'
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(8) : see declaration of 'Point'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(124) : error C2039: 'setColor' : is not a member of 'Point'
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(8) : see declaration of 'Point'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(126) : error C2374: 'i' : redefinition; multiple initialization
        C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(117) : see declaration of 'i'
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(126) : error C2065: 'dog' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(126) : error C2109: subscript requires array or pointer type
C:\Program Files\Microsoft Visual Studio\MyProjects\ccoolpoint\ccoolpoint.cpp(126) : error C2664: 'showDogInfo' : cannot convert parameter 1 from 'int' to 'class Point'
        No constructor could take the source type, or constructor overload resolution was ambiguous
执行 cl.exe 时出错.

ccoolpoint.exe - 1 error(s), 0 warning(s)