话说,连我自己都不能保证靠肉眼看出代码里到底哪里有BUG
你这东西做出来,那是要比我智商还高才行啊你觉得以我的智商,能做出比我智商还高的人工智能吗
你这东西做出来,那是要比我智商还高才行啊你觉得以我的智商,能做出比我智商还高的人工智能吗
解决方案 »
- 如何安装VS2010
- WebClient下载文件后。。。
- 打开文件对话框中看不到部分文件是什么原因?
- Regex.IsMatch这个静态方法只能判断是否包含,有没有类似像indexof()那样可以获得所在位置的正则或其他高级算法呢?
- 用FindWindow()怎么样找到IE呢??
- 小问题:关于保存树结点的修改.
- xna 做成用户自定义控件,急求!
- 急求 测量 ZedGraph 两坐标间的距离
- 谈谈媒体中的高难动作,使用DirectX,C#代码进行流媒体Wma,Mp3过滤开发,高手都进来。
- datagridview请教
- 使用NPOI导出Excel ICell调用过多 内存溢出
- 关于接口、类的概念,请教大家!
VS2010上,我觉得StyleCop不错,一直使用这个做简单的检查
如果涉及到调用dll,难道你的工具还要先反编译dll然后再检查代码吗
string[] s=new string[3];
int i=0;
while(true)
{
if(i<3)
{
i++;
string s1=s[i];
}
}
int[] int1=new int1{1,3,4,5};
string[] s=new string[3];
for(int i=0;i<3;i++)
{
string s1=s[int1[i]];
}
写死在代码里的,从本地文件读出来,甚至从本地数据库读出来,可能都有办法检查,至少理论上能检查
从网络中获取的怎么办
而且有些变量本身就是动态的,不是写死的,你静态检查的时候它是对的,它运行时被重新赋值了怎么办
比如某个数字是通过文本框输入的
写死在代码里的,从本地文件读出来,甚至从本地数据库读出来,可能都有办法检查,至少理论上能检查
从网络中获取的怎么办
而且有些变量本身就是动态的,不是写死的,你静态检查的时候它是对的,它运行时被重新赋值了怎么办
比如某个数字是通过文本框输入的的确不能,所以目前项目中都没有这个计划,下一步是想弄无源码的检测
数据类型不匹配---编译器自己检查,不需要人眼扫描
返回局部变量---这个没啥问题,如果你是指跨作用域使用,编译器有警告,不需要人眼扫描
数组字符串边界溢出---运行期的事情,静态检查无效
内存泄露----运行期的事情,静态检查无效
-------------------
后两个去找单元测试人员,这活是单元测试人员的工作ps:当然优化和规定也不是没有,多数重构工具本身就有一部分重构优化建议(vs自己本身也带有规范检查工具,不过我不建议使用,因为那个浪费工作效率,程序员更多的聪明才智应该在其他方面,而不是天天弄一些无味的工作)