qcustomplot里面的对象都不能通过外部我们delete它,而是需要调用qcustomplot的remove函数,这个会在qcustomplot的list集合里把这个对象移除,然后delete它,不然我们外部delete它了,它内部的list仍然认为那个对象还在,所以它自己释放的时候,就会delete一个已经delete过的内存区域了,而c++不能delete两次同块区域,所以就会运行报错(比如你的软件关闭时候,会自动触发qcustomplot释放掉自己内部的所有对象,而这个对象之前就被我们外部释放了,关闭此软件那瞬间仍然会报错,懂了吧)
bool QCustomPlot::registerItem(QCPAbstractItem*) item already added to this QCustomPlot: 395497896
通过断点调试,这个原因大概是,我们外部delete了那个对象,所以再new添加这个对象时候,系统分配了同一块内存,所以相同的起始地址,那么再添加这个箭头,qcustomplot就会认为此对象已经存在了。所以避免的方法就是,在想删除时候一定要调用remove来删除这个对象,而不要自己外部delete它