小编bao*_*bao的帖子

如何以适合C++的方式删​​除数组中最小和最大的元素?

假设我有一个int数组,我想调用一个函数来删除最小和最大的值.通过删除我的意思是如果我的初始数组长度为7个元素,则新数组有5个元素.其余元素的顺序无关紧要.我想出了一些方法来做到这一点,但我不确定哪一个是C++"做"它的方式,如果这是有道理的.

我现在拥有的是我使用std :: sort来对我的数组进行排序,然后我使用for循环从第二个元素开始复制结果,并从倒数第二个元素停止到具有适当大小的新数组.我应该如何返回阵列?

我无法返回新创建的数组,因为它是函数的局部变量.我可以将新数组作为参数传递给函数,但这不是更老的,C风格的方式吗?我也可以使用std :: vector,但是我必须将数组包装在一个向量中然后打开它(数字需要保留在一个int数组中).好像有点矫枉过正,不是吗?

我来自Python背景,我只是想知道在C++中使用它的更合适的方法是什么.

c++

5
推荐指数
2
解决办法
5150
查看次数

标签 统计

c++ ×1