C++ good reference: http://www.cplusplus.com/reference/ 1 //namesp.cpp -- demo namespace, by tsaiwn@csie.nctu.edu.tw 2 #include 3 #include 4 //Note that ALL C++ library are in namespace std 5 // using namespace std; // 若不寫則所有C++程式庫的都要寫成 std:: 6 7 namespace Taiwan { 8 void haha( ) { printf("haha haha 哈!\n"); } 9 } 10 namespace japan { 11 void haha( ) { printf("Dou Dou Yo Lou Si Ku!\n"); } 12 void bye( ) { printf("Sa Yo Na La!\n"); } 13 } 14 namespace USA { 15 void haha( ) { printf("won won How do you do!\n"); } 16 void bye( ) { printf("Bye! See U!\n"); } 17 } 18 namespace Taiwan { //注意這也是在 Taiwan 19 void bye( ) { printf("Good bye! 再見!!\n"); } 20 } 21 22 void bye(int x) { printf("BBB BBB BBBBB!\n"); } //name overloading 23 24 using namespace Taiwan; 25 //using namespace USA; 26 //using namespace japan; 27 int main( ) { 28 // cout << "Welcome ..." << endl; // 若有 using namespace std; 29 std::cout << "Welcome ..." << std::endl; 30 printf("Now do japan::haha( );\n"); 31 japan::haha( ); 32 printf("\n"); 33 printf("Now do USA::haha( );\n"); 34 USA::haha( ); 35 printf("Now do USA::bye( );\n"); 36 USA::bye( ); 37 printf("=== now do haha( ); bye( );\n"); 38 haha( ); 39 bye( ); 40 printf("Note the using namespace ...\n"); 41 ::bye(38); // this function is in default namespace 42 return 0; 43 } 44 /****** 45 D:\COURSE\OOP\ppnt>g++ namesp.cpp 46 47 D:\COURSE\OOP\ppnt>a 48 Welcome ... 49 Now do japan::haha( ); 50 Dou Dou Yo Lou Si Ku! 51 52 Now do USA::haha( ); 53 won won How do you do! 54 Now do USA::bye( ); 55 Bye! See U! 56 === now do haha( ); bye( ); 57 haha haha 哈! 58 Good bye! 再見!! 59 Note the using namespace ... 60 BBB BBB BBBBB! 61 62 ********************************/