cppbestpractices icon indicating copy to clipboard operation
cppbestpractices copied to clipboard

Collection of C++ Best Practices at Puppet Labs

C++ Best Practices at Puppet Labs

Table of Contents

  • Getting Started Resources
    • The C++ Language
      • Study Guide
      • Language References
      • Community
      • Practitioner Knowledge
      • Tooling
    • Starting a Project
      • Libraries
      • cpp-project-template
      • Vanagon
      • Cross-platform development
      • Internationalization (i18n)
  • Style Guide
    • Header Files
    • Namespaces
    • Exceptions vs Error-Handling
    • TODO: Still under development.
  • FAQ
    • Q: Writing loops
    • Q: Variable modifiers
    • Q: Arguments and return types in class methods
    • Q: How do I use polymorphic objects?
    • Q: How do I share ownership of an object between multiple classes/data structures?
    • Q: When does it make sense to use new/delete?
  • Rants
    • Potential Tools
      • Dynamic Analysis
      • STL debug support in GDB
      • cling
    • Libraries
      • Selection Criteria
      • Using libraries in a project
      • Interesting Candidates

Maintenance

Maintainers: Michael Smith [email protected]

Tickets: Can be opened in Github Issues.