title: Data storage library for C++
body: <p>I would like to use some tiny C++ library in my code, which would allow to do something like:</p>
  
  <pre><code>DataStore ds;
  ds.open("data.bin");
  int num=5;
  std::string str="some text";
  ds.put("key1",num);
  ds.put("key2",str);
  ds.get("key1");// returns int(5)
  ds.get("key2");// returns std::string("some text")
  </code></pre>
  
  <p>The usage style doesn't have to be the same as that code example, but the principle should remain (get/set value of any type and store it in the file blob). The library should also not be SQL based, nor be an SQL wrapper. What are such libraries and what are their advantages?</p>
  
  <p>EDIT: max 10k keys would be used, with approx. 100bytes data per key, file doesn't need to be portable between computers or OS, file shouldn't be editable with text editor (it looks more professional if it isn't) and doesn't have to be multi-threaded aware.</p>