// ============================================================================ // p1c03_38 — 3.11.2 预处理宏的缺陷 // 来源:川大 C++/LinuxC wiki「02.Qt方向」 // 说明:本文件由 gen_part1.py 合并页面中的教学片段而成。每个片段用 // // --- 原文片段 [pageId:blockIdx] --- 标注出处。 // 已做最小修正(笔误/平台移植),详见 docs/ERRATA.md。 // ============================================================================ #include using namespace std; // --- 原文片段 [58954439:37] 3.11.2 预处理宏的缺陷 --- #define COMPARE(x,y) ((x) < (y) ? (x) : (y)) int Compare(int x,int y){ return x < y ? x : y; } void test02(){ int a = 1; int b = 3; //cout << "COMPARE(++a, b):" << COMPARE(++a, b) << endl; // 3 cout << "Compare(int x,int y):" << Compare(++a, b) << endl; //2 } // --- main --- int main() { test02(); return 0; }