C++基础知识易错点总结

不能被重载的运算符

在C++中,不能被重载的运算符有:

  • . 成员运算符
  • .* 成员指针运算符
  • :: 作用域运算符
  • ?: 条件运算符

神奇的变量名y1

显示变量 y1 和 C++ 标准库中的某个变量名称冲突,这个问题应当引起注意。这不是头文件写成 <bits/stdc++.h> 引起的,即使换成各具体的头文件(< iostream >, < algorithm >, < ctring >)还是会发生这个错误。

并且尽量不要用到万能头,有多少就开多少,不然会开一些奇奇怪怪的函数然后导致错误。

main()函数的返回值

main()这个函数返回值为int,long long肯定不行,编译都过不了。有时为了方便把int替换成long long,会用到搜索功能中的替换文件内容,然后以为就一了了之了。(printf也会被替换)

循环语句问题

  • while(条件)为false时,循环体不执行;
  • do while(),循环体至少执行一次;
  • break用于终止离它最近的循环语句;

重载运算符

在重载运算符时,需要注意到const,即使漏掉之后c++11的编译器也不会报错但是使用一些比较lj的编译器(如noi的 )就过不了。
所以还是要养成习惯
(你说用friend还有什么事)

猜你喜欢

转载自blog.csdn.net/Face_the_Blast/article/details/108843039