Lambda Sort - скопирована через рекурсиюC++

Программы на C++. Форум разработчиков
Anonymous
Lambda Sort - скопирована через рекурсию

Сообщение Anonymous »

указывается, что объект функции передается на std :: sort скопирован вокруг рекурсии? < /p>
#include
#include
#include
#include
#include

using namespace std;

int main(int argc, char** argv)
{
mt19937_64 mt;
uniform_int_distribution uid( INT_MIN, INT_MAX );
vector vi;
vi.reserve( 1'000 );
for( size_t i = vi.capacity(); i--; )
vi.emplace_back(uid( mt ));
using map_t = map;
map_t fnAdresses;
sort( vi.begin(), vi.end(),
[&]( this auto &self, int lhs, int rhs )
{
++fnAdresses[&self];
return lhs < rhs;
} );
if( !fnAdresses.size() )
return 0;
char const *min = (char *)fnAdresses.begin()->first;
size_t i = 0;
for( map_t::value_type &kv : fnAdresses )
cout

Подробнее здесь: https://stackoverflow.com/questions/796 ... -recursion

Вернуться в «C++»