假设我有一个分配了缓冲区uint8_t*的C++,并且我想从Rust访问它: 一种方法是使用C++函数: uint8_t receive(uint8_t** data, size_t* size) {//allocates the data, writes to it and then points *data to it} 然而,这使得Rustsize_t* size) {
uit8_t* data = //allocates data
这与Why does Valgrind not detect a memory leak in a Rust program using nightly 1.29.0?相似,但并不相同,因为它是在Rust1.32中解决的 一个简单的可重现的样本: # create a new project
cat <<EOT[1u8; 1024*1024];的1u8更改为0u8,那么我们会很高兴地检测到与old question中一样的内存错误。因此,我不能使用Valg