#include <iostream> #include <string> using namespace std; string a; namespace myNamespace { string a; void output() { cout << a << endl; } } int main() { a = "Namespaces,meh."; myNamespace::a = "Namespaces are great!"; myNamespace::output(); }
结果是“命名空间很棒!”.那么有什么办法可以访问命名空间myNamespace中的全局字符串,而不仅仅是本地的吗?
解决方法
喜欢这个:
void output() { cout << ::a << endl; //using :: = the global namespace }