我有在头文件和一个类的接口及其在一个单独的源文件执行此代码:隐藏类实现
第一:头文件“Gradebook.h”
#include <string>
using namespace std;
class Gradebook{
public:
Gradebook(string);
void setCoursename(string);
string getCoursename();
void displayMessage();
private:
string nameofCourse;
};
第二:“Gradebook.cpp”
#include "stdafx.h"
#include "Gradebook.h"
#include <iostream>
using namespace std;
Gradebook::Gradebook(string name){
setCoursename(name);
}
void Gradebook::setCoursename(string name){
nameofCourse = name;
}
string Gradebook::getCoursename(){
return nameofCourse;
}
void Gradebook::displayMessage(){
cout << "Display message function shows :" << getCoursename() << endl;
}
实现我如何能以仅在其他项目中使用“Gradebook.h”,并隐藏我的实现链接来回这两个单独的文件客户程序员?
您可以将实现预编译为静态或动态加载库。 –
关闭VS项目中的预编译头文件,以便能够删除'stdafx.h'废话。 –
将.cpp编译为一个dll,使用“pimpl idiom”隐藏数据成员和私有方法。 –