类分成多文件

类分成多文件

circle.h

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#pragma once
class Circle
{
public:

void setR(double r);


double getR();
double getArea();
double getGirth();

private:
double m_R;
double m_area;
double m_girth;


};

circle.cpp

在类的外部创建类方法需要使用作用域名;

函数类型 类名::类方法(函数形参)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "Circle.h"

double Circle::getArea() {
m_area = 3.14 * m_R * m_R;
return m_area;
}

double Circle::getGirth() {
m_girth = 2 * 3.14 * m_R;
return m_girth;
}

double Circle::getR() {
return m_R;
}



void Circle::setR(double r)
{
m_R = r;
}

main.cpp

使用Circle类需要引用类头文件#include"Circle.h"

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<iostream>
#include"Circle.h"
using namespace std;

int main(int argc, char* argv[])
{
Circle c;
c.setR(10.0);

cout << c.getArea() << endl;
cout << c.getGirth() << endl;
cout << c.getR() << endl;
return 0;
}