Is there anything wrong with the way that this C++ header is laid out?
<pre><code>#pragma once
#include "LudoCore/Singleton.h"

class LudoTimer : public Singleton&lt;LudoTimer&gt;
{
    friend class Singleton&lt;LudoTimer&gt;;

public:
    void Update();
    void ShortenDay();
    void LengthenDay();
    UINT64 GetDeltaTime() const;
    float GetPercentageOfDayElapsed() const;

private:
    LudoTimer();
    ~LudoTimer();

    UINT64 GetTickCount64() const;
    UINT64 GetElapsedSeconds() const;

    UINT64 m_DeltaTime;

    // Tick Count
    UINT64 m_CurrFrameTick;
    UINT64 m_LastFrameTick;

    int m_SecondsInADay;
    static const int SHORTEST_POSSIBLE_DAY = 60;
    static const int LONGEST_POSSIBLE_DAY = 86400;
    static const int CHANGING_INTERVAL = 600;
};
</code></pre>

<p>To me, the above code looks normal.  However, I'm new to C++ so I may be missing some nuance.  I'm getting a bunch of compiler errors from it, such as: </p>

<blockquote>
  <p>error C2447: '{' : missing function header (old-style formal list?)</p>
</blockquote>

<p>and</p>

<blockquote>
  <p>error C2236: unexpected 'class'
  'LudoTimer'. Did you forget a ';'?</p>
</blockquote>

<p>What gives!</p>
