C++: Difference between revisions

From bone.wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 14: Line 14:


===Put comments in the appropriate place===
===Put comments in the appropriate place===
===Never put 'using namespace' in a header===


===Don't reinvent the wheel===
===Don't reinvent the wheel===

Revision as of 00:23, 8 December 2009

Tips

Minimize includes in headers

to write (reasons: compilation speed, robustness, debugging, wrapping)

Minimize use of macros

inline functions, overloaded functions or templated functions

Prefer iostreams to printf and scanf

Don't ignore compiler warnings

Put comments in the appropriate place

Never put 'using namespace' in a header

Don't reinvent the wheel

boost

-string manipulation - platform-independent file path handling - fixed-length integers (e.g 64 bit) See next section.

numerical especially important: lapack

Fixed length integers

Advanced Topics

Forcing a C++ header to use C calling convention

Declaring functions for shared libraries on Windows