title: How to convert json object to QObject?
body: <p>Json structure is C++ struct-like (struct or array of sturcts, arrays and basic types).
  I need to convert JSON object to specified QObject with specified properties (by QObject fields).</p>
  
  <p>For example, the json:</p>
  
  <pre><code>{
    "name": "Andrew",
    "age" 33,
    "identifiers": [32, 45, 67, 78],
    "more": {
       "gps": "44.9064', W073° 59.0735'",
       "valid": true
    }
  }
  </code></pre>
  
  <p>QObjects:</p>
  
  <pre><code>class FMoreInfo : public QObject {
     Q_OBJECT
  
     Q_PROPERTY( QString gps );
     Q_PROPERTY( bool valid );
  }
  
  class FPersonInfo : public QObject {
     Q_OBJECT
  
     Q_PROPERTY( QString name );
     Q_PROPERTY( int32 age );
     Q_PROPERTY( QVector&lt;int32&gt; identifiers );
     Q_PROPERTY( FMoreInfo more );
  
  }
  </code></pre>
  
  <p>JSON is a string and I need convert it by one template function to FPersonInfo.
  Is there known algorithms?</p>