不要过分相信基础函数, 因为那也是人写的------警惕负负得正的现有逻辑之坑
2016-11-19 00:11
309 查看
同学A调用基础函数, OK. 我调用基础函数,出错! 我的代码如下:
最后花了较长时间定位, 结果是: 基础函数写得不太好, A同学调用之前做了vector去重的兼容。 而我调用的时候, 是直接调用的, 所以出错。
你们负负得正, 搞得我正负得负了, 好吧, 我也只能用负负得正的逻辑了。
#include <iostream> #include <string> #include <vector> #include <map> using namespace std; int basicApi(vector<unsigned int> &v, map<unsigned int, string> &m) { vector<unsigned int>::iterator it; for(it = v.begin(); it != v.end(); ++it) { m[*it] = "x"; } if(v.size() != m.size()) { return -1; } return 0; } int main() { vector<unsigned int> v; map<unsigned int, string> m; v.push_back(1); v.push_back(1); cout << basicApi(v, m) << endl; // -1 return 0; }同学A调用基础函数OK, 于是我就信任了基础函数, 当时居然没有一点点的怀疑啊。
最后花了较长时间定位, 结果是: 基础函数写得不太好, A同学调用之前做了vector去重的兼容。 而我调用的时候, 是直接调用的, 所以出错。
你们负负得正, 搞得我正负得负了, 好吧, 我也只能用负负得正的逻辑了。
相关文章推荐
- 不要因为惧怕而拒绝—数学零基础考研过百分的复习经验
- Oracle 基础语句 函数大全(字符串函数,数学函数,日期函数,逻辑运算函数...
- SQL查询语句的书写要点(基础二、函数)(未完成,先不要看,没有实质内容)
- 做技术注意,操作一个步骤,永远不要相信以前的经验,因为你面临的环境可能已经发生变化,但是没有人告诉你.
- 做技术注意,操作一个步骤,永远不要相信以前的经验,因为你面临的环境可能已经发生变化,但是没有人告诉你.
- 不要过分相信虚拟机,特别是网络连接方面
- 不要因为惧怕而拒绝—数学零基础考研过百分的复习经验
- 总结, 一定不要相信现有数据, json坑人无数
- 第一章 基础:逻辑和证明、集合、函数
- QList介绍(QList比QVector更快,这是由它们在内存中的存储方式决定的。QStringList是在QList的基础上针对字符串提供额外的函数。at()操作比操作符[]更快,因为它不需要深度复制)非常实用
- 函数参数为指针,在函数内没有必要改变指针地址,改了也不起作用,因为即便是指针,也是值传递指针!
- sh函数极度建议不要递归调用,因为它很慢,看测试代码
- Python基础:数据类型、变量定义、输入/输出、逻辑、函数/模块(导入)/类、异常处理
- Python3.X基础语法(数据类型/对象引用/组合数据类型/逻辑操作符/控制流语句/算数操作符/输入输出/函数创建和引用)001
- 教育部发言人说:穷人,你没钱就不要接受高等教育,因为你消费不起。
- 不要因为工作不好而辞职
- 不要因为工作不好而辞职
- 管理,不要过分细节
- 管理,不要过分细节
- C语言程序设计基础讲座之函数