elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Pregunta sobre funciones anónimas en C++ [Lambda].
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Pregunta sobre funciones anónimas en C++ [Lambda].  (Leído 1,849 veces)
Zodiak98

Desconectado Desconectado

Mensajes: 120


Ver Perfil
Pregunta sobre funciones anónimas en C++ [Lambda].
« en: 25 Diciembre 2014, 18:46 pm »

Bueno, es un poco tonto preguntar esto, pero la verdad es que me puse a practicar con las funciones anónimas, y me da un error, tuve dudas así que me puse a practicar con este código simple y me dió el mismo error. ¿Alguien me puede decir qué estoy haciendo mal? Gracias de antemano. :)

Código
  1. #include <iostream>
  2. #include <cstdlib>
  3.  
  4. using namespace std;
  5.  
  6. int main(void)
  7. {
  8.    int x = 2;
  9.  
  10.    int (*funcion1)(int) = [x](int a)
  11.    {
  12.        return (a * x);
  13.    };
  14.  
  15.    cout << funcion1(8) << endl;
  16.  
  17.    system("pause>null");
  18.    return 0;
  19. }


En línea

SrCooper

Desconectado Desconectado

Mensajes: 137


Bazinga!


Ver Perfil
Re: Pregunta sobre funciones anónimas en C++ [Lambda].
« Respuesta #1 en: 25 Diciembre 2014, 19:22 pm »

No sé muy bien por qué la estás declarando así. Yo lo haría de la siguiente manera:
Código
  1. auto funcion1 = [x] (int a) {
  2.      return (a * x);
  3.    };

Donde el tipo de la función es:
Código
  1. function<int (int)>

Si prefieres no usar auto no te olvides de incluir la libreria <functional>. Y en ningún caso te olvides de compilar en modo C++11.

Un saludo y feliz navidad  ;)

PD: Por cierto, no es recomendable hacer llamadas al system al final del programa. Una llamada a std::cin.get() será mucho menos costosa y hará prácticamente lo mismo.


« Última modificación: 25 Diciembre 2014, 19:23 pm por SrCooper » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿Pregunta Sobrecarga de funciones en C++?
Programación C/C++
Zodiak98 6 2,565 Último mensaje 19 Abril 2013, 01:31 am
por rir3760
Pregunta sobre funciones
Programación Visual Basic
Zodiak98 3 1,816 Último mensaje 1 Mayo 2013, 14:51 pm
por ignorantev1.1
pregunta funciones
PHP
ccrunch 2 1,513 Último mensaje 26 Junio 2013, 03:03 am
por engel lex
Duda sobre las expresiones lambda en C++11
Programación C/C++
SrCooper 3 2,001 Último mensaje 18 Enero 2014, 00:41 am
por SrCooper
ayuda aplicacion calculo lambda
Programación General
--bl455-- 0 1,731 Último mensaje 25 Noviembre 2014, 01:51 am
por --bl455--
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines