学习记录-class与namespace的区别

在C++中,structure和class几乎是完全相同的,区别在于structure默认是public,而class默认是private
namespace则与上面两种完全不同,namespace仅仅是一块有名字的逻辑区域,其内部有变量和函数等

namespace

namepace的作用是避免程序中的命名冲突,传统的C++程序是只有一个namespace,现在的程序越来越复杂,为了防止程序员在合并不同程序时出现函数、类、结构体等命名的重复,所以用到命名空间。
名字空间包含类、函数、常量和模板声明等名字空间成员。例如

namespace MyUnderstand
{
    
    
class info {
    
    int number;
              string name;
              public:
              void FristInstance (char *msg);
              void SecondInstance(int Num);
};
}

namespace是开放的,和class不同的是你可以在多个文件里面面向同一个namespace里面添加东西。比如stl里面的东西都是在名字空间std里面,但是却定义在了多个文件里面。

class

class做名字空间时,与namespace形式上类似,但namespace是开发的,可以追加内容,而class的定义是一次性的

猜你喜欢

转载自blog.csdn.net/wzx_numberone/article/details/121315506
今日推荐