Weffc++, Qeffc++
Enables warnings based on certain C++
programming guidelines.
Syntax
Linux:
-Weffc++
Windows:
/Qeffc++
Arguments
None
Default
- OFF
- Diagnostics are not enabled.
Description
This option enables warnings based on certain programming
guidelines developed by Scott Meyers in his books on effective C++ programming.
With this option, the compiler emits warnings for these guidelines:
- Useconstandinlinerather than#define. Note that you will only get this in user code, not system header code.
- Use<iostream>rather than<stdio.h>.
- Usenewanddeleterather thanmallocandfree.
- Use C++ style comments in preference to C style comments. C comments in system headers are not diagnosed.
- Usedeleteon pointer members in destructors. The compiler diagnoses any pointer that does not have adelete.
- Make sure you have a user copy constructor and assignment operator in classes containing pointers.
- Use initialization rather than assignment to members in constructors.
- Make sure the initialization list ordering matches the declartion list ordering in constructors.
- Make sure base classes have virtual destructors.
- Make sureoperator=returns*this.
- Make sure prefix forms of increment and decrement return aconstobject.
- Never overload operators&&,||, and,.
The warnings generated by this compiler option are
based on the following books from Scott Meyers:
- Effective C++ Second Edition - 50 Specific Ways to Improve Your Programs and Designs
- More Effective C++ - 35 New Ways to Improve Your Programs and Designs
IDE Equivalent
Visual Studio:
None
Eclipse:
Compilation Diagnostics
> Enable Warnings for Style Guideline Violations
Alternate Options
None