.h文件中的数组声明,这是一个好主意吗?

Dix*_*eel 1 c++ arrays variable-declaration

我在C++中工作,并希望在头文件的私有部分声明一个数组.现在我正在思考它,我认为这样做是不好的做法?我认为这样做会在包含头部的地方引起多个声明吗?几乎像mem泄漏?

它是否正确?我不确定标准的"好"做法是什么?将所有数组声明放在.cpp文件中?

Lig*_*ica 6

(假设非成员,因为你没有说任何关于封装类型的内容.如果你的字面意思是使用"私人"一词,那么请澄清你的问题.)


你不会得到内存泄漏; 你会得到多个定义错误.

将所有数组定义放在源文件中,是的,但您可以使用extern标头"转发声明"数组.

// headers
extern char buf[256];

// one source file
char buf[256];
Run Code Online (Sandbox Code Playgroud)

这并不是说我建议使用阵列的所有 ...