有人知道这是为什么呀
因为isvalid里面第三个条件,不等式左边是用的新时间戳计算出来的,右边是之前早就计算出来的,所以二者是不同的。删掉
貌似把isvalid的第三个条件删除就可以实现 这个判断好像出了一些问题?
需要你的完整代码,你可以去这个函数调试,打印数值和类型是否一致。
func isValid(newBlcok Block, oldBlock Block) bool {
if newBlcok.Index-1 != int64(oldBlock.Index) {
return false
}
if newBlcok.PreBlockHash != oldBlock.Hash {
return false
}
if calculateHash(newBlcok) != newBlcok.Hash {
return false
}
return true
}