Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Funciones de clase

Estas en el tema de Funciones de clase en el foro de C/C++ en Foros del Web. Hola Soy nuevo en la programación en C (aunque llevo años programando en Delphi) y aun no tengo muy por la mano el lenguaje. Quisiera ...
  #1 (permalink)  
Antiguo 22/08/2008, 02:49
 
Fecha de Ingreso: agosto-2008
Mensajes: 4
Antigüedad: 15 años, 8 meses
Puntos: 0
Funciones de clase

Hola

Soy nuevo en la programación en C (aunque llevo años programando en Delphi) y aun no tengo muy por la mano el lenguaje.

Quisiera hacer una función de clase pero no doy con la sintaxis, a ver si alguien puede ayudarme (programo en C++Builder)

Muchas gracias de ante mano

Nos leemos

Última edición por cadetill; 22/08/2008 a las 02:54
  #2 (permalink)  
Antiguo 22/08/2008, 04:02
Avatar de Fayca  
Fecha de Ingreso: abril-2008
Mensajes: 164
Antigüedad: 16 años, 1 mes
Puntos: 2
Respuesta: Funciones de clase

hola, a que te refieres con funcion de clase?
te refieres a una funcion, a una clase o a una funcion dentro de una clase?
o ninguna de esas y no lei bien? je
  #3 (permalink)  
Antiguo 22/08/2008, 04:07
Avatar de Mort20  
Fecha de Ingreso: junio-2008
Ubicación: Roca Casterly
Mensajes: 141
Antigüedad: 15 años, 11 meses
Puntos: 2
Respuesta: Funciones de clase

Ejemplo:
Código:
class Ejemplo
{
     private:
        int variable;
     public:
         Ejemplo(); //constructor
         ~Ejemplo() { /* declaración */ }
         void funcion(int&); //función de clase
}
//Definicion

Ejemplo::Ejemplo() { /*declaración*/ }
void Ejemplo::funcion(int& var) { /*declaración*/ }
Puedes declarar tanto como en el destructor (para cualquier tipo de función), como como en las de las otras dos.
Como veo que no andas muy metido en el tema de clases, te aconsejo que busques por google un libro llamado "aprenda C++ como si estuviera en primero" que el tema de las clases,herencias,etc lo explica de maravilla.

P.D: espero que con sintaxis sea a eso a lo que te refirieses xDD
__________________
Un Lannister siempre cumple sus promesas
  #4 (permalink)  
Antiguo 22/08/2008, 04:23
 
Fecha de Ingreso: agosto-2008
Mensajes: 4
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Funciones de clase

Hola

Gracias por responder tan rápido

A ver, por función de clase a lo que me refiero es a una función que depende de la clase, no de un objeto, para poder ser llamada. Es decir, no hace falta crear un objeto para llamar a esa función.

Si seguimos el ejemplo de Mort20 y de la clase Ejemplo, sería una función que podría llamarse algo parecido a esto

Código:
Ejemplo->MiFuncion();
sin tener que hacer algo como

Código:
  ej = new Ejemplo();
  ej->MiFuncion();
  delete ej;
Imagino que si esto existe en Delphi también existirá en C++ ya que esto es POO y no es específico de un lenguaje.

Por cierto, ya estoy descargando el libro que mencionas a ver qué tal

Gracias de nuevo

Nos leemos
  #5 (permalink)  
Antiguo 22/08/2008, 04:41
Avatar de Mort20  
Fecha de Ingreso: junio-2008
Ubicación: Roca Casterly
Mensajes: 141
Antigüedad: 15 años, 11 meses
Puntos: 2
Respuesta: Funciones de clase

Ah, vale, para hacer eso debe ser la función estática (para que el compilador sepa que no modifica ningún miembro privado/protegido de la clase).

Código:
  {...}
   static int prueba(int y) { return y; }
  {..}
int main ()
{
    cout << Ejemplo::prueba(4) << endl; //escribe 4
}
__________________
Un Lannister siempre cumple sus promesas
  #6 (permalink)  
Antiguo 22/08/2008, 05:23
 
Fecha de Ingreso: agosto-2008
Mensajes: 4
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Funciones de clase

Hola

Gracias Mort20, es precisamente lo que estaba buscando (lo he visto también en el libro/manual que me comentabas).

Nos leemos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:54.