众所周知,在OI / ACM中常常会使用万能头文件 bits/stdc++.h,为了方便,又会常常加入 using namespace std 导入 std 命名空间内所有名称。
然而方便是方便了,这样做又会导致命名污染。比如 y0 ,偏偏有的时候用之前忘了定义,又不正确地使用了。编译器不会报错,一运行就是 Runtime Error ,就会无端端浪费很多 debug 时间。笔者没经历过这种事情,不过也有所耳闻。于是特地研究了 std 空间内预定义的名称,总结了以下命名策略。
1.不要使用下划线&全大写
2.尽可能短 5字符以下
3.避开常用的类、函数、动词及容易混淆的缩写
4.采用一套方便而防冲突的方法,如驼峰命名法或尾字符双写等
5.避开以下词:
C++命名规范与陷阱
本文探讨了在OI/ACM竞赛中使用C++时如何避免命名污染的问题,特别是使用万能头文件bits/stdc++.h结合using namespace std所带来的潜在风险。文章提供了具体的命名建议,并列举了一些应避免使用的单词。
1084

被折叠的 条评论
为什么被折叠?



