找Bug的感悟
2016-01-07 本文已影响0人
小A的记事本
/*每天都写一段,不拘着写什么,就是编程中的一些总结和感悟*/
修Bug好修,找Bug难找。哎,许多时候百思不得其解,总结一些目前遇见的——
-
最最坑爹的,硬件运行速度不如软件快,结果软件向硬件要数据时,数据还没传到,需要Sleep();几毫秒或是printf();使软件慢一点点。
-
内存泄露,new 与delete配套使用,说起来都知道但是实际做到难。某个函数里new了之后,其他地方数次调用这个函数,相当于new了数次,但是delete未必释放了数次,而且好多时候根本不知道该在哪里delete,C++这点真的不如Java。光这点就坑死了。
-
为指针申请内存。还是new/delete malloc/free ,还是Java比较好,根本没指针这回事。
-
C++多重继承和虚函数。多重继承许多时候改一个类其实相当于要改几个类,而且容易忘记继承的几个类都是些什么功能;虚函数,继承用,相当于Java的接口,但是碰到一个差劲的编译器,还要自己在子类重写函数,哎哎哎~
-
类型转换,严格的类型检查也不能避免被截断长度或是一个变量要不停的强转类型以做不同的函数的参数。
-
访问权限修饰符,虽然IDE会提示,但是还是要时刻判断,而且C++要自己写get/set函数,好多时候不知道何时才能适当的给与暴露权限。
-
两个类中的同名变量(特别是指针)其实是不同的,对于一个赋值/初始化,另一个不受影响。
-
不过最大的Bug还是需求不明确,需求不停改改改,提高提高提高,原本的架构无法满足需求,要重构架构了。哎~~~