Ogni lambda dovrebbe avere un tipo sconosciuto unico .. è garantito che due lambda nello stesso ambito hanno tipi diversi?I lambda hanno tipi diversi?
int main() {
auto l1 = [](){};
auto l2 = [](){};
static_assert(std::is_same<decltype(l1), decltype(l2)>::value == false, "Types cannot be equal!");
}
Questo funziona ma mi piacerebbe sapere se è garantito che l'asserzione non verrà mai attivata.
Qualche possibilità si potrebbe aggiungere un link alla fonte della citazione per completezza, dato che la citazione si conclude "Come descritto di seguito"? –
@IStanley: Il '[expr.prim.lambda]/3' è un'attribuzione (indica una sezione nello standard C++). –
impari qualcosa di nuovo ogni giorno! Grazie. –