If it is not sure, that the data is in the answer data should should check before any access to avoid unwanted errors and its consequences.
for (SizeType i = 0; i < result_loop.Size(); i++)
{
var id = result_loop[i]["id"];
var title = result_loop[i]["title"];
if( (id != null) && (title !=null) ) {
cout << id.GetInt() << " - " << title.GetString() << "\n";
}
}
Smart error handling is key to a smooth and bullet proof software. ;-)