C++类封装的例子

sorting.h
//宏保护
#ifndef SORTING_H_H_INCLUDED
#define SORTING_H_H_INCLUDED
using namespace std;
class sorting()
{
public:
         int n;
         void bubble( );
};
#endif
sorting.cpp
#include <iostream>
#include "sorting.h"
using namespace std;
void sorting::bubble()
{
    //实现代码here
}
main.cpp
#include <iostream>
#include "sorting.h"
using namespace std;
int main()
{
         sorting test;  //声明sorting类的对象
         test.bubble();  //由对象调用函数
         return 0;
}
Makefile
GCC := g++
all:
        $(GCC) -c main.cpp -o main.o
        $(GCC) -c sorting.cpp -o sorting.o
        $(GCC) -o main main.o sorting.o
clean:
#        rm main.o -rf
#        rm sorting.o -rf
#        rm main -rf
         rm *.o main *~ -rf

这是一个类封装的例子,使用者无需知道实现细节,可以很方便地调用和测试函数。
#ifndef SORTING_H_H_INCLUDED
#define SORTING_H_H_INCLUDED
......
#endif
以上代码与直接在首行加入#pragma once的作用完全相同。宏保护,当在cpp文件里重复引入时可忽略,如:main.cpp中#include "sorting.h" 两次时,若没有宏保护则编译不通过,提示错误,若增加宏保护则不会。ifndef表示if not define,第一次引入.h时可顺利定义,之后的都被忽略。
private:说明,它后面所有的变量和函数,都不可能被类外访问,只能在类内被使用。
public:说明,它后面的所有变量和函数可以被类外的代码所访问,没有任何限制。
protected:说明,它后面的所有变量和函数,只能被自己或自己派生的类所使用。不能被类外的代码使用

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值