Gibt es eine Möglichkeit, Funktionen, die std::pairs zurückgeben, einfach zu handhaben?C++

Programme in C++. Entwicklerforum
Guest
 Gibt es eine Möglichkeit, Funktionen, die std::pairs zurückgeben, einfach zu handhaben?

Post by Guest »

C++11 verfügt über die Funktion std::minmax_element, die ein Wertepaar zurückgibt. Dies ist jedoch ziemlich verwirrend in der Handhabung und beim Lesen und erzeugt eine zusätzliche, später nutzlose Variable, die den Gültigkeitsbereich verunreinigt.

Code: Select all

auto lhsMinmax = std::minmax_element(lhs.begin(), lhs.end());
int &lhsMin = *(lhsMinMax.first);
int &lhsMax = *(lhsMinmax.second);
Gibt es einen besseren Weg, dies zu tun? Etwas wie:

Code: Select all

int lhsMin;
int lhsMax;
std::make_pair(lhsMin, lhsMax).swap(
std::minmax_element(lhs.begin(), lhs.end()));

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post