2012-05-06 43 views
10
#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(); 
} 

Kết quả là "Không gian tên là tuyệt vời!". Vì vậy, có cách nào để truy cập vào chuỗi toàn cầu bên trong không gian tên myNamespace thay vì chỉ một địa phương?C++ truy cập các biến/đối tượng toàn cầu trong không gian tên có biến/đối tượng có cùng tên

Trả lời

15

Như thế này:

void output() 
{ 
    cout << ::a << endl; //using :: = the global namespace 
} 
+1

Xem ở đây cho kết quả: http://ideone.com/3cm2n –

Các vấn đề liên quan