c++经典三文件形式

//Circle1.h文件

//下面一段代码是为了防止这个头文件(即Circle.h文件)被重复使用
#pragma once
//当你的项目已经存在Circle类型的时候,便不可以重复定义这个类了
//右击项目/头文件/源文件,添加,创建类
//此时会生成一个.h文件,一个.cpp文件,.h文件用于类的声明,.cpp文件用于类的实现,但这个.cpp文件并不包含main函数,只是单纯用于这个类的实现
class Circle1
{
public:
    //类的头文件中方法(函数)只写声明,不写定义(即具体实现)
    void setR(double r);
    double getR();

    double getGirth();
    double getArea();
private:
    //变量(不论私有还是公开)是要完整写的
    double my_r;
    double my_girth;
    double my_area;
};


//Circle1.cpp文件

#include "Circle1.h"//实现类方法的.cpp文件也要包含类的头文件,这样才引用到这个类的作用域

//.cpp文件中具体实现Circle类里的方法,但在具体完成方法的时候,需要加上类的作用域,不然编译器不知道这个函数被实现出来时属于谁的,加上类名(即作用域)就不会产生歧义了
//注意:一定要加上作用域(即类的名字)
void Circle1::setR(double r)
{
    my_r = r;
}

double Circle1::getR()
{
    return my_r;
}

double Circle1::getGirth()
{
    my_girth = 2 * 3.14 * my_r;
    return my_girth;
}

double Circle1::getArea()
{
    my_area = 3.14 * my_r * my_r;
    return my_area;

}


//main.cpp文件

#include <iostream>//<>表示在系统文件库中查找

#include "Circle1.h"//""表示在当前所在项目查找
using namespace std;

//经典的三文件形式:一个头文件声明类,一个.cpp文件实现类的方法,一个包含main的.cpp文件为主程序
int main()
{
    int r = 10;
    int girth;
    int area;
    Circle1 circle;
    circle.setR(r);
    girth = circle.getGirth();
    area = circle.getArea();
    cout << "girth=" << girth << endl;
    cout << "area=" << area << endl;
    return 0;
}



  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值