GetDunne Wiki

Notes from the desk of Shane Dunne, software development consultant

User Tools

Site Tools


modernizing_the_vanillajuce_code_base

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
modernizing_the_vanillajuce_code_base [2017/09/01 14:11]
shane [Outdated C syntax and library functions]
modernizing_the_vanillajuce_code_base [2017/09/01 19:35]
shane [Coding Practices]
Line 1: Line 1:
-==== Coding Practices ==== 
-  * [[Modernizing the VanillaJuce code base]] -- purging outdated practices in C++ code 
  
 ====== Modernizing the VanillaJuce code base ====== ====== Modernizing the VanillaJuce code base ======
Line 32: Line 30:
  
 ===== Outdated C syntax and library functions ===== ===== Outdated C syntax and library functions =====
-  * [[enum class rather than typedef enum]] +  * [[enum_class_rather_than_typedef_enum|C++11 "enum classrather than C "typedef enum"]] 
-  * [[juce::String or std::string instead of arrays of char]+  * [[eliminate_char_arrays|C++ string classes instead of char[arrays]]
-  * [[sprintf and other standard C library functions]]+
   * [[constexpr instead of preprocessor define]]   * [[constexpr instead of preprocessor define]]
  
 ===== Pointers and references ===== ===== Pointers and references =====
-  * [[avoid new/delete]] +  * [[Avoid new/delete, prefer references to pointers, use member variables for sub-Components]]
-  * [[pass references where possible]] +
-  * [[use member variables for subcomponents rather than pointers]]+
  
 ===== Newer C++ features and constructs ===== ===== Newer C++ features and constructs =====
   * [[Range-based for loops]]   * [[Range-based for loops]]
   * [[inline member variable initialization]]   * [[inline member variable initialization]]
-  * [[take advantage of established cast operators (foo("xyz") not foo(String("xyz")))]] 
  
  
modernizing_the_vanillajuce_code_base.txt · Last modified: 2017/09/01 19:49 by shane