前言
有时候我们需要提供对外的API,通常会以头文件的形式提供。举个简单的例子:
提供一个从某个指定数开始打印的接口,头文件内容如下:
//来源:公众号编程珠玑
//作者:守望先生
#ifndef _TEST_API_H
#define _TEST_API_H
//test_api.h
class TestApi{
public:
TestApi(int s):start(s){}
void TestPrint(int num);
private:
int start_ = 0;
};
#endif //_TEST_API_H
实现文件如下:
//来源:公众号编程珠玑
//作者:守望先生
#include "test_api.h"
#include <iostream>
//test_api.cc
TestApi::TestPrint(int num){
for(int i = start_; i < num; i++){
std::cout<< i <<std::endl;
}
}
类TestApi中有一个私有变量start_,头文件中是可以看到的。
#include "test_api.h"
int main(){
TestApi test_api{10};
test_api.TestPrint(15);
return 0;
}
常规实现缺点
从前面的内容来看, 一切都还正常,但是有