C++ Tips: Difference between revisions

Jump to navigation Jump to search
m
Line 21: Line 21:
* Use <tt>SGGeod</tt> instead of basic longitude/latitude/elevation doubles. It's easier to pass to other methods, type safe (can't confuse order of lat/lon) and unit-safe (degrees vs radians vs meters vs feet is explicit in the API).
* Use <tt>SGGeod</tt> instead of basic longitude/latitude/elevation doubles. It's easier to pass to other methods, type safe (can't confuse order of lat/lon) and unit-safe (degrees vs radians vs meters vs feet is explicit in the API).


* Never pollute the namespace in a header file, via <tt>using</tt> declarations, even for standard library types. I.e don't be lazy and write <tt>using std::string;</tt> in a header - each time you refer to <tt>string</tt>, <tt>vector</tt>, etc, you need to fully qualify the name with <tt>std::</tt>. It's a bit more type, but much safer for code that includes the header file. (In source files, you are welcome to do as you please)
* Never pollute the namespace in a header file, via <tt>using</tt> declarations, even for standard library types. I.e don't be lazy and write <tt>using std::string;</tt> in a header - each time you refer to <tt>string</tt>, <tt>vector</tt>, etc, you need to fully qualify the name with <tt>std::</tt>. It's a bit more to type, but much safer for code that includes the header file. (In source files, you are welcome to do as you please)


== C++ Efficiency ==
== C++ Efficiency ==
580

edits

Navigation menu