3
A
回答
2
只要你理解他人编写的代码样本可能会导致警告与-Wall
,那么,它的使用,因为它可以让你在编写代码的习惯,这是免费的一个很好的标志编译器可能识别的任何潜在灰色区域。
-pedantic
另一方面,是一个棘手的情况。以下是GCC 4.4.4联机手册的说明:
发出所有严格的ISO C和ISO C++要求的警告;拒绝所有使用禁止扩展的程序,以及其他一些不遵循ISO C和ISO C++的程序。对于ISO C,遵循由所使用的任何-std选项指定的ISO C标准版本。
有效的ISO C和ISO C++程序应该在使用或不使用此选项的情况下正确编译(尽管极少数将需要指定ISO C所需版本的-ansi或-std选项)。但是,如果没有这个选项,也支持某些GNU扩展和传统的C和C++特性。用 这个选项,它们被拒绝。
-pedantic不会导致使用名称以
__
开头和结尾的替代关键字的警告消息。在 后跟“__
分机号__
”也禁用了迂腐警告。但是,只有系统头文件应该使用这些转义路由;应用程序应该避免 他们。一些用户尝试使用-pedantic来检查程序是否符合严格的ISO C标准。他们很快就发现它没有达到他们想要的效果:它发现了一些非ISO实践,但不是全部 - 只有那些ISO C要求诊断的实体,以及其他一些已经添加了诊断的实践。
报告任何不符合ISO C的功能在某些情况下可能会有用,但需要大量的额外工作,并且会与pedantic完全不同。我们不打算在不久的将来支持这种功能。
1
不完全是一个答案,但还有的-Weffc++
标志发出警告,即违反C++有效(该书由斯科特·迈耶)的指导方针结构。
虽然这些准则是好的,但它们也可能过于严格,例如。 STL头文件将发出警告。
相关问题
- 1. 我应该学习C++还是ASM?
- 2. 我应该先学习C#还是Java?
- 3. 在学习Ajax之前,我应该学习Xml和Javascript吗?
- 4. 我应该学习XUL吗?
- 5. 我应该学习NHaml吗?
- 6. 我应该学习Ruby 1.8还是1.9?
- 7. 我应该先学习Angularjs还是Laravel?
- 8. 我开始我的C++学习,使用CodeBlocks和Windows,我应该使用哪种编译器?
- 9. 我应该继续使用Windows Forms还是WPF应用程序学习C#?
- 10. 在学习JavaFx之前,我应该学习Swing吗?
- 11. 什么时候应该使用学说ORM和什么时候zend-db-table?
- 12. 我什么时候必须使用scikit的fit方法学习?
- 13. 我应该尝试了解教程还是应该从头开始学习?
- 14. 为什么我应该学习和使用struts?
- 15. 该怎么做,开发应用程序时学习或先学习,然后开发应用程序
- 16. 用scikit学习partial_fit返回ValueError:先验的总和应该是1
- 17. 在开始使用Cocos2D之前,我应该学习基本的iOS编程吗?
- 18. 作为初学者,我应该学习Rails,Joomla还是DHTML?
- 19. 我们应该什么时候在C#中使用事件
- 20. 我什么时候应该使用javax.swing.SwingUtilities.invokeLater()?
- 21. 我什么时候应该使用UITableViewCellSeparatorStyleSingleLineEtched?
- 22. 学习/使用ML。我应该使用哪个系统?
- 23. 我想学习游戏开发。我应该使用哪种语言?
- 24. 什么时候应该out和ref参数在C#中使用?
- 25. 当4.0即将公开发售时,我应该开始学习iPhone SDK 3.2吗?
- 26. 我应该从哪里学习asp.net?
- 27. 我应该学习哪个WebGL框架?
- 28. 我应该如何学习NLTK?
- 29. 什么时候应该打开和关闭MongoDB连接?
- 30. 在学习SharePoint 2010时,我应该在ASP.NET MVC 3中使用哪种View Engine?
“我应该永远......”倾向于是个人观点火焰焰火的邀请......倾向于同意的人倾向于表达他们的支持,而倾向于不同观点的人倾向于提出反对意见。 – 2010-11-29 10:49:49
要添加: 乍一看,“学习无警告代码”听起来像是一个好主意,也是一个很好的前进方向。另一方面,只要自己编写的代码样本不会发挥作用,无论您是从教科书中尝试的东西还是尝试在其他地方找到的开放源代码,实用主义都会立即启动。该代码不可能在特定的编译器中完全无警告。 – 2010-11-29 11:02:44