C++编译器通常会损坏函数名以支持许多特性。编程人员可以使用外部的"C"方式来抑制默认的名称损坏。然而,为什么int main(int, char **)从来不受影响?
// test.cpp
int max(int a, int b) {
return a > b ? a : b;
}
extern "C" {
int min(int a, int b) {
return a < b ? a : b;
}
}
int main (int argc, char *argv[]) {
return