C++好久没用了....虽然基本的语法和代码还是没问题,但是对于一些C++的细节和具体实现并不了解。具体编码中会遇到一些错误,本文记录一下我平时约到的问题,随时更新。
1. size()方法:
具体是在我的for循环中判断上限是size()-3.本想想java一样当size小于3的时候上限是负数,自然跳出循环即可。但是实际工程中发现这个值是一个极大值。查阅发现,size()的返回值当int时是一个无符号整形(unsigned_int),所以size()-1也是一个无符号数,不会是负数,而是溢出了的极大正数。所以这里一定要注意!!可以用(int)(size())先转为int即可。