//TruncatedStepRowtemplate templateTruncatedStepRow::TruncatedStepRow(const TruncatedStepRow& a, const TruncatedStepRow& b, size_t len, size_t lenIndices, int lenTrim) : StepRow {a}{ cout cout // cout assert(len+lenIndices assert(len-lenTrim+(2*lenIndices) // unsigned char hash[len-lenTrim]; cout for(long long unsigned int i=0;i cout } cout cout for(long long unsigned int i=0;i cout } cout for (int i = lenTrim; i hash[i-lenTrim] = a.hash[i] ^ a.hash[i]; } // cout print_hash(len-lenTrim); if (a.IndicesBefore(b, len, lenIndices)) { std::copy(a.hash+len, a.hash+len+lenIndices, hash+len-lenTrim); std::copy(b.hash+len, b.hash+len+lenIndices, hash+len-lenTrim+lenIndices); } else { std::copy(b.hash+len, b.hash+len+lenIndices, hash+len-lenTrim); std::copy(a.hash+len, a.hash+len+lenIndices, hash+len-lenTrim+lenIndices); } //cout //cout}相同的值异或应该是0才对,为什么输出还是4或者7 啊??