c++有方便的测试环境吗?

gg92宪盟如今她 2015-09-06 03:01:54
在开发过程中经常需要测试某个函数(比如atof)或者一小段代码(比如cout << setprecision(6) << f <<endl;);
那么我必须写一个完整的Cpp文件作为测试,浪费时间,写完之后还占地方,非常讨厌;
请问有没有好的方法可以提高我的效率?
我用的是mac系统,编一些小的oj的算法题目,最好是轻量的方法,请教。
...全文
236 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2015-09-08
  • 打赏
  • 举报
回复
请测试该函数“输入一个正整数”的功能是否正确。(←这根本就是一个在本世纪内不可能完成的任务。——zhao4zhong1)
赵4老师 2015-09-08
  • 打赏
  • 举报
回复
1.对 2.只能在今后的修改各种代码中体会。 3.对
  • 打赏
  • 举报
回复
引用 9 楼 zhao4zhong1 的回复:
请测试该函数“输入一个正整数”的功能是否正确。(←这根本就是一个在本世纪内不可能完成的任务。——zhao4zhong1)
谢谢回答,我还是非常不明白你的意思。 不过我的问题答案我已经知道了,目前是没有这样的方式的。有替代的方案:Blade,参考:http://www.cnblogs.com/2018/p/3075497.html 但我发现我对你的回答还是有一堆不明白的地方: 1.为什么不能测试输入一个正整数的功能?是指我们无法控制输入吗? 2.有时(甚至大多数时候),看上去越合理、越简洁的代码,运行起来性能越差,出错时查找原因越难,找到出错原因后改正越费劲。这也不理解。 3.请牢记:源代码本身的书写是否结构化或面向对象或符合设计模式或敏捷…并不重要,重要的是你是否使用结构化或面向对象或符合设计模式或敏捷…的方法命名标识符、阅读、修改、检查、测试源代码。这句话是指一般人并没有使用到它们的精髓吗?
ooolinux 2015-09-07
  • 打赏
  • 举报
回复
这可能是一个好的项目
  • 打赏
  • 举报
回复
引用 5 楼 zhao4zhong1 的回复:
[quote=引用 4 楼 wo970211002 的回复:] [quote=引用 1 楼 zhao4zhong1 的回复:] 个人意见:测试是鸡肋。
不能同意,测试必然能加快我的编码过程,怎么是鸡肋,我是新手,还请详细解答。[/quote] 代码在生产环境下运行时将遇到的各种意外是不可预知的。 请牢记:源代码本身的书写是否结构化或面向对象或符合设计模式或敏捷…并不重要,重要的是你是否使用结构化或面向对象或符合设计模式或敏捷…的方法命名标识符、阅读、修改、检查、测试源代码。 意思是你程序结构看上去再合理,再简洁,也不一定比看上去一团乱麻的程序结构在运行或修改时更不易出错,更方便修改,出错了更容易找到哪里出错和具体出错的原因,更容易改正错误。 试对比 图书馆(对图书的分类够结构化了吧) 和 搜索引擎(可看作是扁平化任何结构数据,仅支持全文检索) 哪个处理信息更方便、更高效。 所以 与其费劲去重构代码让其看上去更简洁、更合理 不如费劲学习grep、sed、awk、……这类全文搜索和批处理编辑的工具。 结构越复杂,越难修改,越难除错。 有时(甚至大多数时候),看上去越合理、越简洁的代码,运行起来性能越差,出错时查找原因越难,找到出错原因后改正越费劲。 程序员要做的不是尽力避免错误,而是聚焦在快速发现并改正错误。真正以快速方式轻易解决错误,“快速的失败”远胜过“预防错误”。Fred George [/quote] 感谢你的回答,不过完全答非所问,可能是我表述不清。 我的问题是: C++开发过程中,我想实验(不用“测试“这个词了)一个函数怎么用,我就要写一个文件,编译&运行它很麻烦,有没有什么方法可以让我快速尝试一个函数(给这个函数一个参数,看会不会报错,输出是否正确等)? (就像PHP和Python这些脚本语言一样有一个交互环境,当然C++不可能有交互环境。)
赵4老师 2015-09-07
  • 打赏
  • 举报
回复
就拿最最简单的输入一个正整数的功能举例,以下场景测试有卵用?! 1 111111111111111111111111111111111111111111111111111111 one I 2,不对,应该是1 4-3 一 ① 壹 واحد 한
赵4老师 2015-09-07
  • 打赏
  • 举报
回复
引用 4 楼 wo970211002 的回复:
[quote=引用 1 楼 zhao4zhong1 的回复:] 个人意见:测试是鸡肋。
不能同意,测试必然能加快我的编码过程,怎么是鸡肋,我是新手,还请详细解答。[/quote] 代码在生产环境下运行时将遇到的各种意外是不可预知的。 请牢记:源代码本身的书写是否结构化或面向对象或符合设计模式或敏捷…并不重要,重要的是你是否使用结构化或面向对象或符合设计模式或敏捷…的方法命名标识符、阅读、修改、检查、测试源代码。 意思是你程序结构看上去再合理,再简洁,也不一定比看上去一团乱麻的程序结构在运行或修改时更不易出错,更方便修改,出错了更容易找到哪里出错和具体出错的原因,更容易改正错误。 试对比 图书馆(对图书的分类够结构化了吧) 和 搜索引擎(可看作是扁平化任何结构数据,仅支持全文检索) 哪个处理信息更方便、更高效。 所以 与其费劲去重构代码让其看上去更简洁、更合理 不如费劲学习grep、sed、awk、……这类全文搜索和批处理编辑的工具。 结构越复杂,越难修改,越难除错。 有时(甚至大多数时候),看上去越合理、越简洁的代码,运行起来性能越差,出错时查找原因越难,找到出错原因后改正越费劲。 程序员要做的不是尽力避免错误,而是聚焦在快速发现并改正错误。真正以快速方式轻易解决错误,“快速的失败”远胜过“预防错误”。Fred George
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
个人意见:测试是鸡肋。
不能同意,测试必然能加快我的编码过程,怎么是鸡肋,我是新手,还请详细解答。
zeloas 2015-09-06
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
个人意见:测试是鸡肋。
正解
赵4老师 2015-09-06
  • 打赏
  • 举报
回复
个人意见:测试是鸡肋。

24,853

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧