Wyrażenie Lambda

0
  1. Napisz funkcję (zwykłą), która przyjmuje parametr typu int. Funkcja powinna zwrócić funkcję lambda która przyjmuje jeden parametr typu int i zwraca sumę z wartości przekazanych do zwykłej funkcji i funkcji lambda.
    *Chciałbym się upewnić czy jest dobrze i co dalej zrobić ?
#include <iostream>

using namespace std;

int add(int x , int f){return x+f;}

auto f = [](int xx){return xx;};
3

Napisz funkcję (zwykłą), która przyjmuje parametr typu int.

Gdzie masz tę funkcję?

2

W skrócie, nie masz nic w tym dobrze. W szczególności, żadna z funkcji, które napisałeś nie zwraca funkcji lambda.

0
enedil napisał(a):

W skrócie, nie masz nic w tym dobrze. W szczególności, żadna z funkcji, które napisałeś nie zwraca funkcji lambda.

funkcja::
int add(int x , int f){return x+f;}

1
Patryk27 napisał(a):

Napisz funkcję (zwykłą), która przyjmuje parametr typu int.

Gdzie masz tę funkcję?
Funkcja::
int add(int x , int f){return x+f;}

2
sssebastianb5 napisał(a):
enedil napisał(a):

W skrócie, nie masz nic w tym dobrze. W szczególności, żadna z funkcji, które napisałeś nie zwraca funkcji lambda.

funkcja::
int add(int x , int f){return x+f;}

No nie zwraca funkcji lambda, zwraca sumę liczb, a nie funkcję.

0
enedil napisał(a):
sssebastianb5 napisał(a):
enedil napisał(a):

W skrócie, nie masz nic w tym dobrze. W szczególności, żadna z funkcji, które napisałeś nie zwraca funkcji lambda.

funkcja::
int add(int x , int f){return x+f;}

No nie zwraca funkcji lambda, zwraca sumę liczb, a nie funkcję.

czyli ,co mam napisać funkcję lambda w następujący sposób ?

auto l = [] (int x, int y) { return x + y; };
1

Nie, dalej nie zwracasz żadnej funkcji lambda, tylko jakąś sumę liczb.

0
auto add() -> decltype ([](int x) -> int)
{
    return [](int x) { return x; }
}

chodzi może o ten zapis ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0