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


 


Tema destacado: Personaliza-Escoge el diseño del foro que más te guste.


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse)
| | |-+  El C orientado a objetos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: El C orientado a objetos  (Leído 1,599 veces)
LastDragon


Desconectado Desconectado

Mensajes: 847


Usuario Baneado (troll)


Ver Perfil WWW
El C orientado a objetos
« en: 7 Junio 2006, 20:36 »

Vaya con un post que puso Xciclop fue a dar con el hello World de C orientado a objetos y no es C++

Pero parece que nunca tuvo éxito este método de programación, digo método por que al final C++ es C revolcado con objetos pero en otro estilo.

C orientado a objetos a simple vista cumple con lo requisitos para ser eso OOP



#import <stdio.h>
#import <objc/Object.h>

@interface Hello : Object  // Declara la clase Hello
{
}
- hello;                   // Declara el método hello de la clase Hello
@end

@implementation Hello             
- hello
{
   printf("hello, world\n");   // Se implementa la clase con sus métodos
}
@end

int main()
{
   id obj;  // No tengo idea que será el ID, tal vez un inicializado
   obj = [Hello new]; // Se instansea o se crea el objeto “obj” de la clase Hello con una llamada su constructor, que al no estar en la clase se llama al default vació

   [obj hello]; // El objeto llamando al método hello, Aquí se imprime el hola mundo
   [obj free];  // Supongo que esto la hace de destructor y recolector de basura
   return 0;
}   // Termina

Entonces C tiene 2 métodos de programación en objetos, alguien sabe de algún proyecto hecho con este método de programación.


En línea

CyberLine

Desconectado Desconectado

Mensajes: 121


Colombiano?


Ver Perfil
Re: El C orientado a objetos
« Respuesta #1 en: 7 Junio 2006, 20:50 »

Código:
id obj;

tal vez sea una especie de puntero generico instanciador

Este es el desconocido Objetive-C?


« Última modificación: 7 Junio 2006, 20:52 por CyberLine » En línea



Usuario Gnu/Linux # 409786
Juan_Perez

Desconectado Desconectado

Mensajes: 148


Ver Perfil
Re: El C orientado a objetos
« Respuesta #2 en: 7 Junio 2006, 21:45 »

En la decada de los 90, como en 92 o 93, Steve Jobs, uno de los fundadores de las Macintosh Apple, se separo de esta compañia y fundo NextStep. Al principio fabricaban tanto el hardware como el software (al igual que las Mac), pero despues, debido a cuestiones economicas, solo vendian el Sistema Operativo NextStep. Este sistema operativo tenia como base, para programar, el lenguaje Objetive C, una especie de C orientado a objetos. En aquello años mucha gente que habia trabajado con este lenguaje hablaba maravillas de el y tambien del sistema operativo NextStep, lamentablemente no tuvo mucho eco entre la gente y, como muchas otras cosas buenas que han aparecido en el mundo de la computacion, paso al olvido.
En línea

JuszR


Desconectado Desconectado

Mensajes: 2.865


Programming & RI


Ver Perfil
Re: El C orientado a objetos
« Respuesta #3 en: 7 Junio 2006, 23:28 »

Es el Objective-C: http://en.wikipedia.org/wiki/List_of_hello_world_programs#Object-Oriented_C_Version

Pero está muy raro, está mejor C++. ;D
En línea

- No programming language is perfect. There is not even a single best language; there are only languages well suited or perhaps poorly suited for particular purposes. [Herbert Mayer]
CyberLine

Desconectado Desconectado

Mensajes: 121


Colombiano?


Ver Perfil
Re: El C orientado a objetos
« Respuesta #4 en: 8 Junio 2006, 16:45 »

Pero está muy raro, está mejor C++. ;D

Pues la verdad no se me hace la estructura tan complicada, pero si es solo orientado a objetos como java.
En línea



Usuario Gnu/Linux # 409786
BenRu
The Prodigy


Desconectado Desconectado

Mensajes: 4.004


Ver Perfil
Re: El C orientado a objetos
« Respuesta #5 en: 9 Junio 2006, 16:11 »

Creo que esto seria lo basico para poder empezar a crear un programilla en C de manera gráfica...Aqui tenemos una simple ventana:

Código:
<?php
#include <windows.h>

/*  Declare Windows procedure  */
LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);

/*  Make the class name into a global variable  */
char szClassName[ ] = "WindowsApp";

int WINAPI WinMain (HINSTANCE hThisInstance,
                    HINSTANCE hPrevInstance,
                    LPSTR lpszArgument,
                    int nFunsterStil)

{
    HWND hwnd;               /* This is the handle for our window */
    MSG messages;            /* Here messages to the application are saved */
    WNDCLASSEX wincl;        /* Data structure for the windowclass */

    /* The Window structure */
    wincl.hInstance = hThisInstance;
    wincl.lpszClassName = szClassName;
    wincl.lpfnWndProc = WindowProcedure;      /* This function is called by windows */
    wincl.style = CS_DBLCLKS;                 /* Catch double-clicks */
    wincl.cbSize = sizeof (WNDCLASSEX);

    /* Use default icon and mouse-pointer */
    wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
    wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
    wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
    wincl.lpszMenuName = NULL;                 /* No menu */
    wincl.cbClsExtra = 0;                      /* No extra bytes after the window class */
    wincl.cbWndExtra = 0;                      /* structure or the window instance */
    /* Use Windows's default color as the background of the window */
    wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;

    /* Register the window class, and if it fails quit the program */
    if (!RegisterClassEx (&wincl))
        return 0;

    /* The class is registered, let's create the program*/
    hwnd = CreateWindowEx (
           0,                   /* Extended possibilites for variation */
           szClassName,         /* Classname */
           "Windows App",       /* Title Text */
           WS_OVERLAPPEDWINDOW, /* default window */
           CW_USEDEFAULT,       /* Windows decides the position */
           CW_USEDEFAULT,       /* where the window ends up on the screen */
           544,                 /* The programs width */
           375,                 /* and height in pixels */
           HWND_DESKTOP,        /* The window is a child-window to desktop */
           NULL,                /* No menu */
           hThisInstance,       /* Program Instance handler */
           NULL                 /* No Window Creation data */
           );

    /* Make the window visible on the screen */
    ShowWindow (hwnd, nFunsterStil);
 

    /* Run the message loop. It will run until GetMessage() returns 0 */
    while (GetMessage (&messages, NULL, 0, 0))
    {
        /* Translate virtual-key messages into character messages */
        TranslateMessage(&messages);
        /* Send message to WindowProcedure */
        DispatchMessage(&messages);
    }

    /* The program return-value is 0 - The value that PostQuitMessage() gave */
    return messages.wParam;
}


/*  This function is called by the Windows function DispatchMessage()  */

LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    switch (message)                  /* handle the messages */
    {
        case WM_DESTROY:
            PostQuitMessage (0);       /* send a WM_QUIT to the message queue */
            break;
        default:                      /* for messages that we don't deal with */
            return DefWindowProc (hwnd, message, wParam, lParam);
    }

    return 0;
}
En línea

JuszR


Desconectado Desconectado

Mensajes: 2.865


Programming & RI


Ver Perfil
Re: El C orientado a objetos
« Respuesta #6 en: 9 Junio 2006, 16:25 »

Wikipedia*

¿Y si tienes un IDE visual? Jojo.
En línea

- No programming language is perfect. There is not even a single best language; there are only languages well suited or perhaps poorly suited for particular purposes. [Herbert Mayer]
CyberLine

Desconectado Desconectado

Mensajes: 121


Colombiano?


Ver Perfil
Re: El C orientado a objetos
« Respuesta #7 en: 9 Junio 2006, 22:03 »

jeje, bien por tu aporte BenRu, esta en C++, pero... eso que tiene que ver con el tema?

Saludos
En línea



Usuario Gnu/Linux # 409786
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Pasando un diseño estructurado a orientado a objetos
Java
Aikanáro Anário 0 2,065 Último mensaje 15 Octubre 2011, 18:55
por Aikanáro Anário
Es verdad que mysql es orientado a objetos?
Bases de Datos
klaine 1 2,548 Último mensaje 3 Diciembre 2011, 16:54
por Novlucker
Gestión usuarios Orientado a Objetos [dudas]
PHP
ruxcbe 1 347 Último mensaje 13 Marzo 2015, 17:15
por MinusFour
¿c++ es orientado a objetos?
Programación C/C++
luis_74 2 378 Último mensaje 31 Mayo 2015, 17:37
por Peregring-lk
ayuda con php orientado a objetos
PHP
geshiro 7 516 Último mensaje 23 Septiembre 2015, 08:07
por geshiro
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines