鱼C论坛

 找回密码
 立即注册
查看: 3468|回复: 5

哪里错了 帮我看下

[复制链接]
发表于 2012-9-7 10:30:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. #include <iostream.h>

  2. class Point //点类
  3. {
  4. private:
  5. int x, y;//私有成员变量,坐标
  6. public :
  7. Point()//无参数的构造方法,对xy初始化
  8. {
  9. x = 0;
  10. y = 0;
  11. }
  12. Point(int a, int b)
  13. {
  14. x = a;
  15. y = b;
  16. }
  17. void setXY(int a, int b)
  18. {
  19. x = a;
  20. y = b;
  21. }
  22. int getX()//得到x的方法
  23. {
  24. return x;
  25. }
  26. int getY()//得到Y的函数
  27. {
  28. return y;
  29. }

  30. };
  31. class Rectangle //矩形类
  32. {
  33. private:
  34. Point point1, point2, point3, point4;
  35. public :
  36. Rectangle();//类Point的无参构造函数已经对每个对象做初始化啦,这里不用对每个点多初始化了
  37.       Rectangle(Point one, Point two)//这里报错
  38. {
  39. point1 = one;
  40. point4 = two;
  41. init();
  42. }
  43. Rectangle(int x1, int y1, int x2, int y2)
  44. {
  45. point1.setXY(x1, y1);
  46. point4.setXY(x2, y2);
  47. init();
  48. }
  49. void init()//给另外两个点做初始化的函数
  50. {
  51. point2.setXY(point4.getX(), point1.getY() );
  52. point3.setXY(point1.getX(), point4.getY() );
  53. }
  54. void printPoint()//打印四个点的函数
  55. {
  56. cout<<"A:("<< point1.getX() <<","<< point1.getY() <<")"<< endl;
  57. cout<<"B:("<< point2.getX() <<","<< point2.getY() <<")"<< endl;
  58. cout<<"C:("<< point3.getX() <<","<< point3.getY() <<")"<< endl;
  59. cout<<"D:("<< point4.getX() <<","<< point4.getY() <<")"<< endl;
  60. }
  61. int getArea()//计算面积的函数
  62. {
  63. int height, width, area;
  64. height = point1.getY() - point3.getY();
  65. width = point1.getX() - point2.getX();
  66. area = height * width;
  67. if(area > 0)
  68. return area;
  69. else
  70. return -area;

  71. }
  72. };
  73. void main()
  74. {
  75. Point p1(-15, 56), p2(89, -10);//定义两个点
  76. Rectangle r1(p1, p2);//用两个点做参数,声明一个矩形对象r1
  77. Rectangle r2(1, 5, 5, 1);//用两队左边,声明一个矩形对象r2
  78. cout<<"矩形r1的4个定点坐标:"<< endl;
  79. r1.printPoint();
  80. cout<<"矩形r1的面积:"<< r1.getArea() << endl;
  81. cout<<"\n矩形r2的4个定点坐标:"<< endl;
  82. r2.printPoint();
  83. cout<<"矩形r2的面积:"<< r2.getArea() << endl;
  84. }
复制代码
Source file.cpp(39) : error C2018: unknown character '0xa1'
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-9-7 10:36:09 | 显示全部楼层
  1. #include <iostream.h>


  2. class Point //点类

  3. {
  4.        
  5. private:
  6.        
  7.         int x, y;//私有成员变量,坐标
  8.        
  9. public :
  10.        
  11.         Point()//无参数的构造方法,对xy初始化
  12.                
  13.         {
  14.                
  15.                 x = 0;
  16.                
  17.                 y = 0;
  18.                
  19.         }
  20.        
  21.         Point(int a, int b)
  22.         {
  23.                
  24.                 x = a;
  25.                
  26.                 y = b;
  27.                
  28.         }
  29.        
  30.         void setXY(int a, int b)
  31.         {
  32.                
  33.                 x = a;
  34.                
  35.                 y = b;
  36.                
  37.         }
  38.        
  39.         int getX()//得到x的方法
  40.                
  41.         {
  42.                
  43.                 return x;
  44.                
  45.         }
  46.        
  47.         int getY()//得到Y的函数
  48.                
  49.         {
  50.                
  51.                 return y;
  52.                
  53.         }
  54.        
  55.        
  56. };

  57. class Rectangle //矩形类

  58. {
  59.        
  60. private:
  61.        
  62.         Point point1, point2, point3, point4;
  63.        
  64. public :
  65.        
  66.         Rectangle();//类Point的无参构造函数已经对每个对象做初始化啦,这里不用对每个点多初始化了
  67.        
  68.         Rectangle(Point one, Point two)               
  69.         {
  70.                
  71.                 point1 = one;
  72.                
  73.                 point4 = two;
  74.                
  75.                 init();
  76.                
  77.         }
  78.        
  79.         Rectangle(int x1, int y1, int x2, int y2)
  80.                
  81.         {
  82.                
  83.                 point1.setXY(x1, y1);
  84.                
  85.                 point4.setXY(x2, y2);
  86.                
  87.                 init();
  88.                
  89.         }
  90.        
  91.         void init()//给另外两个点做初始化的函数
  92.                
  93.         {
  94.                
  95.                 point2.setXY(point4.getX(), point1.getY() );
  96.                
  97.                 point3.setXY(point1.getX(), point4.getY() );
  98.                
  99.         }
  100.        
  101.         void printPoint()//打印四个点的函数
  102.                
  103.         {
  104.                
  105.                 cout<<"A:("<< point1.getX() <<","<< point1.getY() <<")"<< endl;
  106.                
  107.                 cout<<"B:("<< point2.getX() <<","<< point2.getY() <<")"<< endl;
  108.                
  109.                 cout<<"C:("<< point3.getX() <<","<< point3.getY() <<")"<< endl;
  110.                
  111.                 cout<<"D:("<< point4.getX() <<","<< point4.getY() <<")"<< endl;
  112.                
  113.         }
  114.        
  115.         int getArea()//计算面积的函数
  116.                
  117.         {
  118.                
  119.                 int height, width, area;
  120.                
  121.                 height = point1.getY() - point3.getY();
  122.                
  123.                 width = point1.getX() - point2.getX();
  124.                
  125.                 area = height * width;
  126.                
  127.                 if(area > 0)
  128.                        
  129.                         return area;
  130.                
  131.                 else
  132.                        
  133.                         return -area;
  134.                
  135.                
  136.         }
  137.        
  138. };

  139. void main()

  140. {
  141.        
  142.         Point p1(-15, 56), p2(89, -10);//定义两个点
  143.        
  144.         Rectangle r1(p1, p2);//用两个点做参数,声明一个矩形对象r1
  145.        
  146.         Rectangle r2(1, 5, 5, 1);//用两队左边,声明一个矩形对象r2
  147.        
  148.         cout<<"矩形r1的4个定点坐标:"<< endl;
  149.        
  150.         r1.printPoint();
  151.        
  152.         cout<<"矩形r1的面积:"<< r1.getArea() << endl;
  153.        
  154.         cout<<"\n矩形r2的4个定点坐标:"<< endl;
  155.        
  156.         r2.printPoint();
  157.        
  158.         cout<<"矩形r2的面积:"<< r2.getArea() << endl;
  159.        
  160. }现在你再编译下看下 哪里还报错不
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2012-9-7 12:19:27 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-9-7 17:15:28 | 显示全部楼层
鱼c会员帝 发表于 2012-9-7 12:19
你改了哪里啊

第39行代码
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2012-9-7 19:36:18 | 显示全部楼层
丿夏夜灬彬刂 发表于 2012-9-7 17:15
第39行代码

Rectangle(Point one, Point two)   ???没有啊   不是一样的么
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-9-7 21:38:11 | 显示全部楼层
鱼c会员帝 发表于 2012-9-7 19:36
Rectangle(Point one, Point two)   ???没有啊   不是一样的么

那你的注释去掉就行了 因为你的注释  没有注释成功 你仔细看下  
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-15 00:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表