title: Objective-C typedef enum in global constants file
body: <p>OK, this is related to question <a href="https://stackoverflow.com/questions/538996/constants-in-objective-c">"Constants in Objective C"</a>.</p>
  
  <p>I created <strong>Constants.h</strong> and its corresponding <strong>Constants.m</strong> file:</p>
  
  <pre class="lang-c prettyprint-override"><code>// Constants.h
  extern int const BOOKS; 
  typedef enum SSDifficultyLevel {
      EASY = 0,
      MEDIUM = 1,
      HARD = 2
  } SSDifficultyLevel;
  
  // Constants.m
  int const BOOKS = 66;
  </code></pre>
  
  <p>My question: Is OK for the <code>enum</code> to be <code>typedef</code>'d in <strong>Constants.h</strong>? The code is compiling fine (no warnings or errors so far) but I was wondering if this is the right way to do it, as the solution provided in the related question involves splitting the constant's definition and declaration. </p>
  
  <p>Thanks.</p>