标头c ++中的静态类方法声明

时间:2016-06-16 14:42:16

标签: c++ documentation header-files

我有一个静态类,它的函数调用了一些方法。因为我不能将它们作为私有函数添加到头文件中,我不希望它们在类外面看到我在cpp文件中编码它们。我的问题是,因为我必须编写项目的文档,无论如何我可以将这些函数添加到标题中吗? (如果没有编码说明,我不喜欢在cpp中编写文档。)

示例:

MyStaticClass.h

class MyStaticCLass{
 public:
 /**
 * I can write the doc here :D 
 */
 static void myFunction();
}

MyStaticClass.cpp
 void MyStaticClass::myFunction(){
  myMethod1();
  myMethod2();
 }
 /**
 *I want to write the doc of this function but in the header
 */
 void myMethod1(){
 //do something 1
}
 /**
 *I want to write the doc of this function but in the header
 */
void myMethod2(){ 
// do something 2
}

1 个答案:

答案 0 :(得分:0)

首先,你要混淆术语“方法”和“功能”。方法是类成员函数(静态或非静态),这是myFunction。函数meMethod1myMethod2不是方法,它们是非成员函数或“自由”函数。

其次,如果您希望功能myMethod1myMethod2仅在MyStaticClass.cpp源文件中进行缓存,那么我建议您将它们放入自己的匿名{{1} }:

namespace

此外,如果您的类只有#include "MyStaticClass.h" // An anonymous namespace namespace { /** *i want to write the doc of this function but in the header */ void myMethod1(){ //do something 1 } /** *i want to write the doc of this function but in the header */ void myMethod2(){ // do something 2 } } void MyStaticClass::myFunction(){ myMethod1(); myMethod2(); } 成员函数(“方法”)且没有成员变量,那么它与static没有区别。因此,在您的情况下,您的头文件可能看起来像

namespace

源文件不必改变我上面显示的内容。