在C++中,全局函數是定義在全局命名空間中的函數,可以在任何地方調用它們,而無需指定特定的命名空間。全局函數可以通過在函數名前面不加任何限定符的方式來定義,例如:
#include <iostream>
void globalFunction() {
std::cout << "This is a global function" << std::endl;
}
int main() {
globalFunction();
return 0;
}
命名空間是一個用來組織代碼并避免命名沖突的機制。在C++中,可以使用namespace
關鍵字來定義命名空間,將一組相關的函數、類、變量等放在同一個命名空間中。可以使用using namespace
語句來引入一個命名空間,以便直接訪問其中的成員。
#include <iostream>
namespace MyNamespace {
void namespaceFunction() {
std::cout << "This is a function in a namespace" << std::endl;
}
}
int main() {
MyNamespace::namespaceFunction();
using namespace MyNamespace;
namespaceFunction();
return 0;
}
在上面的例子中,namespaceFunction()
函數被定義在MyNamespace
命名空間中,可以通過MyNamespace::
來訪問它。然后通過using namespace MyNamespace;
語句引入該命名空間,就可以直接調用namespaceFunction()
函數了。