C++的那些乱七八糟的错误

来源:互联网 发布:js姓名的正则表达式 编辑:程序博客网 时间:2024/05/17 04:30

1. 命名空间函数冲突

#include <iostream>using namespace std;//using std::cout;//using std::endl;template<class T>T max(T m1, T m2) {return (m1 > m2) ? m1 : m2;}int main() {cout << max(2, 5) << endl;return 0;}

你看, 命名空间也有一个max方法, 你自己也有一个max方法,都是全局的, 编译器蒙了.

随风说了: 尽量少用命名空间, 你用别人的东西 , 你就得防着这种错误. 实在要用, 用using std::cout. 这样用吧.


不断更新中...