关于namespace的部分补充

上次写了一点关于namespace的部分内容,这里再做出一点补充。

上次讲到了namespace的一般用法,就是简单的一般命名空间使用,这里就补充其他两种特殊的,分别是全局命名空间和匿名命名空间。

全局命名空间是默认的命名空间,在显示声明的命名空间之外的声明就是默认在全局命名空间中,如全局变量,全局函数。

匿名命名空间就是使用namespace建立命名空间时没有加上名字的命名空间,如namespace{},这个命名空间就是一个匿名的命名空间,这其中的所有成员相当于静态成员,也就是static声明的,只能被本源文件访问。C++现在大多提倡用匿名命名空间取代static的用法。

需要注意的是匿名命名空间最好不要写在头文件中

猜你喜欢

转载自blog.csdn.net/hhm853610070/article/details/68926539