580
edits
m (→Standards) |
|||
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 == |
edits