Как я удаляю самый маленький и самый большой элемент в массиве способом, это соответствует C++?

Скажем, у меня есть массив ints, и я хочу вызвать функцию для удаления самых маленьких и самых больших значений. Удаляют, я подразумеваю, что, если мой начальный массив был 7 элементами в длине, новый массив имеет 5 элементов. Порядок остающихся элементов не имеет значения. Я придумал некоторые способы сделать это, но я не уверен, каким является C++ "способ" сделать его, если это имеет смысл.

Что я имею, теперь то, что я использую станд.:: вид к виду мой массив и затем я использую, чтобы цикл скопировал результаты, начинающие со второго элемента и останавливающиеся в предпоследнем элементе в новый массив с соответствующим размером. Как я должен возвратить массив хотя?

Я не могу возвратить недавно созданный массив, потому что это - локальная переменная к функции. Я мог передать новый массив как аргумент функции, но не что больше более старого, C-стиля способ сделать это? Я мог также использовать станд.:: вектор, но затем я должен был бы перенести массив в вектор и затем развернуть его (числа должны остаться в массиве ints). Походит на излишество, не так ли?

Я происхожу из среды Python, и я просто хочу знать то, что является более соответствующим способом сделать это в C++.

5
задан bao 10 August 2010 в 19:32
поделиться