c++ 默认的sort排序问题,求大神解答

这是一个类对象排序的问题,为了验证我的类以及排序没问题,我先把问题点注释运行。

运行结构:

结果没问题,现在我取消24,26,27行的注释(不取消25行),这是一个类的析构函数。

运行sort函数,对用了一堆的类析构函数然后排序。如果我在类的析构函数中释放指针,取消注释25行。结构如下:

问题就这样子了。

哪个大神晓得的,求解。问题:1.为什么sort会调用类的析构函数 2.如何去用sort排序含有析构对象的呢?

#c++开发##c++#
全部评论
改成 bool op2(Stu& a, Stu& b) 之后剩下的析构是 sort 挪数据的时候,拷贝构造同时析构以前的数据打印出来的
2 回复 分享
发布于 2022-12-02 20:20 四川
会不会是因为出现了临时对象拷贝的问题所以调用析构呢
点赞 回复 分享
发布于 2022-12-02 15:22 湖北
我也感觉像是临时对象拷贝的问题
点赞 回复 分享
发布于 2022-12-03 22:48 广西

相关推荐

11-15 19:28
已编辑
蚌埠坦克学院 硬件开发
点赞 评论 收藏
分享
10-07 23:57
已编辑
电子科技大学 Java
八街九陌:博士?客户端?开发?啊?
点赞 评论 收藏
分享
1 1 评论
分享
牛客网
牛客企业服务