Editing Miniature/Policies
Warning: You are not logged in.
Your IP address will be recorded in this page's edit history.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 27: | Line 27: | ||
== Naming conventions == | == Naming conventions == | ||
- | * Methods *do* | + | * Methods *do* seomthing, that's why their names should always contain a verb (slots and signals count as methods, too). |
* typedef'd types *might* hint at their composed types (to emphasize their intended use), but avoid directly including the type information in the name: | * typedef'd types *might* hint at their composed types (to emphasize their intended use), but avoid directly including the type information in the name: | ||
Line 90: | Line 90: | ||
** Details: | ** Details: | ||
- | *** QPointers keep track of object deletion and set all referring QPointers to zero, preventing dangling pointers. Especially when using signals & slots, this is an often (and sometimes hard to spot!) source of bugs. With QPointers, you can wrap your code with | + | *** QPointers keep track of object deletion and set all referring QPointers to zero, preventing dangling pointers. Especially when using signals & slots, this is an often (and sometimes hard to spot!) source of bugs. With QPointers, you can wrap your code with guards like so: |
if (m_member) | if (m_member) | ||
{ | { | ||
// Do sth with m_member object. | // Do sth with m_member object. | ||
- | // This block *never* gets executed | + | // This block *never* gets executed if m_meber was deleted elsewhere. |
} | } | ||
* Assign 0 to pointers after deletion (or use QPointers). | * Assign 0 to pointers after deletion (or use QPointers). | ||
* Always initialize type primitives (e.g., pointers) in the constructor's initializer list. | * Always initialize type primitives (e.g., pointers) in the constructor's initializer list. | ||
- | |||
== How to keep code testable (and hopefully, mostly bugfree) == | == How to keep code testable (and hopefully, mostly bugfree) == |
Learn more about Contributing to the wiki.