2

2 つのオブジェクトの値の違いを比較して表示したい 2 つのオブジェクトがあります。1 つは参照オブジェクトで、もう 1 つはテスト オブジェクトです。キーの順序、オブジェクトの長さは同じです。オブジェクトの整数値と浮動小数点値はわずかに異なる場合があり、その違いをユーザーに表示したいと考えています。

これがコードです。オブジェクトのすべての値を反復処理するかどうかを知りたいです。

if(bool(refobject.length()==testobject.length())==true)
{
QJsonObject::iterator i,j;
for (i = refobject.begin(), j= testobject.begin(); 
              i!=refobject.end()&&j!=testobject.end(); ++i,++j)
{
if(i.key()==j.key())
   {     
   if(i.value().isString() && j.value().isString())
   { 
       if(i.value()==j.value())
       {
         //display i and j
       }
       else 
       {
        //display them in a different colour 
       }

     }
   else if(i.value().isArray()&& j.value().isArray())
   {
     //iterate and compare
   }
   else if(i.value().isObject() && j.value().isObject())
   {
      //check if there are strings or integers or array and work accordingly 
   }
   else if(i.value().isDouble() && j.value().isDouble())
   {
       if(i.value()==j.value())
       {
         //display i and j
       }
       else 
       {
          //display them in a different colour 
       }

   }

}
}
}

else{//display message that you cannot compare them}

これが、両方のオブジェクトの値を反復して比較するのに役立つかどうかを知りたいです。

2 つの json オブジェクトを反復処理して値を比較する他の戦略は大歓迎です!

前もって感謝します!!!

4

1 に答える 1