// ============================================================================ // p1c03_42 — 3.14.2.1 函数重载基本语法 // 来源:川大 C++/LinuxC wiki「02.Qt方向」 // 说明:本文件由 gen_part1.py 合并页面中的教学片段而成。每个片段用 // // --- 原文片段 [pageId:blockIdx] --- 标注出处。 // 已做最小修正(笔误/平台移植),详见 docs/ERRATA.md。 // ============================================================================ #include using namespace std; // --- 原文片段 [58954439:41] 3.14.2.1 函数重载基本语法 --- namespace A{ void MyFunc(){ cout << "无参数!" << endl; } void MyFunc(int a){ cout << "a: " << a << endl; } void MyFunc(string b){ cout << "b: " << b << endl; } void MyFunc(int a, string b){ cout << "a: " << a << " b:" << b << endl;} void MyFunc(string b, int a){ cout << "a: " << a << " b:" << b << endl;} } namespace B{ void MyFunc(string b, int a){} //int MyFunc(string b, int a){} //无法重载仅按返回值区分的函数 } void test(){ A::MyFunc(); A::MyFunc(10); A::MyFunc("hello"); A::MyFunc(10, "world"); A::MyFunc("world", 10); B::MyFunc("ok", 1); } // --- main --- int main() { test(); return 0; }