C++中命名空间和类的区别
在本节中,我们将看到 C++ 中命名空间和类之间的区别。命名空间和类是两个不同的概念。类是数据类型。类基本上是结构的扩展版本。类可以包含数据成员和作为成员的函数,但命名空间可以通过将变量和函数组合为一个来包含变量和函数。
命名空间不能创建为对象。这个概念被用作区分相似函数、类、变量等的附加信息。变量、具有相同名称的函数可以放在不同的命名空间中。
现在让我们指出命名空间和类的一些重要区别。
命名空间用于创建一组标识符,因此它们不会发生冲突。通过使用类,我们必须创建该类的一个实例,但对于命名空间而言,情况并非如此。
对于命名空间,我们使用 'using' 声明。对于类,除非我们从中派生,否则这是不可能的。
我们可以重新打开命名空间并跨翻译单元添加更多元素。这不能使用类来完成。
namespace my_namespace {int function1();
}
namespace my_namespace {
int function1();
}
对于类,以下代码不好:
class my_class {int function1();
};
class my_class {
int function1();
};
我们可以使用未命名的命名空间,这很好,但我们不能使用未命名的类,这会产生错误。
namespace{ //Legalint function1();
};
class { //制造错误
int function1();
};
以上是 C++中命名空间和类的区别 的全部内容, 来源链接: utcz.com/z/350499.html