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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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