QByteArray生のバイナリデータを保存するために使用しています。データを保存するには、QByteArrayの追加機能を使用します。
255よりも解釈しやすいと思うので、バイトを表すために unsigned char を使用するのが好きです-1。ただし、次のようにゼロ値のバイトを a に追加しようとするとQByteArray:
command.append( (unsigned char) 0x00));
コンパイラはcall of overloaded append(unsigned char) is ambiguous. 私が理解しているように、これはゼロがヌルポインターとして解釈される可能性があるためですが、コンパイラーが unsigned char を const char* であるかどうか疑問に思うのではなく、なぜ char として扱わないのですか? command.append(0)もちろん、コンパイラがキャストなしで不平を言うかどうかは理解できます。