#include#include using namespace std; //计算矩形面积 //分别利用全局函数和成员函数判断两个矩形面积是否相等 class Square { public: //设置参数,获取参数 void setL(int l) { m_L = l; } int getL() { return m_L; } void setH(int h) { m_H = h; } int getH() { return m_H; } //计算矩形面积 int calculateArea() { return m_L * m_H; } //利用成员函数判断两个矩形面积是否相等 bool isSameByClass(Square &s) { if(calculateArea() == s.calculateArea()) { return true; }else{ return false; } } private: int m_L; int m_H; }; //利用全局函数判断两个矩形面积是否相等 //参数类型使用引用 bool isSame(Square &s1,Square &s2) { if(s1.calculateArea() == s2.calculateArea()) { return true; }else{ return false; } } int main() { Square s1; s1.setH(10); s1.setL(20); cout<<"s.getH()="< cout<<"全局函数 : 面积相等"< cout<<"全局函数 : 面积不相等"< cout<<"成员函数 : 面积相等"< cout<<"成员函数 : 面积不相等"< 2.判断点与圆的位置,并且利用不同的类调用,并通过保存到不同的文件调用 test.cpp
#include#include using namespace std; #include "Point.h" #include "Circle.h" //判断点与圆心的位置 void isInCircle(Circle &c,Point &p) { //点到圆心的距离 int distance = (p.getX() - c.getCenter().getX())*(p.getX() - c.getCenter().getX())+ (p.getY() - c.getCenter().getY())*(p.getY() - c.getCenter().getY()); if (distance == c.getR()) { cout<<"点在圆上"< c.getR()) { cout<<"点在圆外"< cout<<"点在圆内"< Circle c; c.setR(5); Point center; center.setX(5); center.setX(0); c.setCenter(center); Point p; p.setX(9); p.setX(0); isInCircle(c,p); return 0; } Circle.h
#ifndef _CIRCLE_H_ //如果没有定义头文件circle.h,则执行下面的代码。这是防止重复定义 #define _CIRCLE_H_ //定义头文件 //#pragma once #includeusing namespace std; #include "Point.h" //圆类 class Circle { public: void setR(int r); int getR(); void setCenter(Point center); Point getCenter(); private: Point m_Center; int m_R; }; #endif //表示头文件结束 Circle.cpp
#include "Circle.h" void Circle::setR(int r) { m_R = r; } int Circle::getR() { return m_R; } void Circle::setCenter(Point center) { m_Center = center; } Point Circle::getCenter() { return m_Center; }Point.h
#ifndef _POINT_H_ //如果没有定义头文件circle.h,则执行下面的代码。这是防止重复定义 #define _POINT_H_ //定义头文件 //#pragma once #includeusing namespace std; //点类 class Point { public: void setX(int x); int getX(); void setY(int y); int getY(); private: int m_X; int m_Y; }; #endif //表示头文件结束 Point.cpp
#include "Point.h" void Point::setX(int x) { m_X = x; } int Point::getX() { return m_X; } void Point::setY(int y) { m_Y = y; } int Point::getY() { return m_Y; }



