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

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Qué puntos en contra y a favor veis en esta forma de programar?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Qué puntos en contra y a favor veis en esta forma de programar?  (Leído 2,957 veces)
anonimo12121


Desconectado Desconectado

Mensajes: 1.813


Ver Perfil WWW
Qué puntos en contra y a favor veis en esta forma de programar?
« en: 17 Junio 2012, 14:09 pm »

Qué puntos en contra y a favor veis en esta forma de programar?
Pregunto por el archivo camara.cpp
area.hpp
Código
  1. #ifndef _AREAHPP_
  2. #define _AREAHPP_
  3. struct Area {
  4.    int x;
  5.    int y;
  6.    int w;
  7.    int h;
  8. };
  9. #endif
  10.  
camara.hpp
Código
  1. #ifndef _CAMARAHPP_
  2. #define _CAMARAHPP_
  3. #include "area.hpp"
  4. #include <iostream>
  5. using namespace std;
  6. class CamaraGame{
  7.    private:
  8.        Area CArea;
  9.        int LW;
  10.        int LH;
  11.    public:
  12.        CamaraGame(int _mw,int _mh,int _x,int _y,int _h,int _w);
  13.        bool Move(int x,int y);
  14.        bool ResizeLimit(int _lw,int _lh);
  15.        Area Get();
  16.  
  17.  
  18. };
  19. #endif
  20.  
camara.cpp
Código
  1. #include "camara.hpp"
  2. //
  3. CamaraGame::CamaraGame(int _mw,int _mh,int _x,int _y,int _w,int _h){
  4.    if(_x>=0)CArea.x=_x;
  5.    else {
  6.        CArea.x=0;
  7.        cout << "\nERROR CAMARA 0007: valor inferior a 0, se le asigna 0\n";
  8.    }
  9.    if(_y>=0)CArea.y=_y;
  10.    else {
  11.        CArea.y=0;
  12.        cout << "\nERROR CAMARA 0008: valor inferior a 0, se le asigna 0\n";
  13.    }
  14.    if(_w>=0)CArea.w=_w;
  15.    else {
  16.        CArea.w=0;
  17.        cout << "\nERROR CAMARA 0009: valor inferior a 0, se le asigna 0\n";
  18.    }
  19.    if(_h>=0)CArea.h=_h;
  20.    else {
  21.        CArea.h=0;
  22.        cout << "\nERROR CAMARA 0010: valor inferior a 0, se le asigna 0\n";
  23.    }
  24.    if(_mw>=0)LW=_mw;
  25.    else {
  26.        LW=0;
  27.        cout << "\nERROR CAMARA 0011: valor inferior a 0, se le asigna 0\n";
  28.    }
  29.    if(_mh>=0)LH=_mh;
  30.    else {
  31.        LH=0;
  32.        cout << "\nERROR CAMARA 0012: valor inferior a 0, se le asigna 0\n";
  33.    }
  34. };
  35. bool CamaraGame::Move(int _x,int _y){
  36.    if(_x<0){
  37.        _x=0;
  38.        cout << "\nERROR CAMARA 0003: valor inferior a 0, se le asigna 0\n";
  39.    }
  40.    if(_y<0){
  41.        _y=0;
  42.        cout << "\nERROR CAMARA 0004: valor inferior a 0, se le asigna 0\n";
  43.    }
  44.    if(_x+CArea.w>LW){
  45.        _x=LW-CArea.w;
  46.        cout << "\nERROR CAMARA 0005: valor superior a lo permitido se le asigna " << _x << "\n";
  47.    }
  48.    if(_y+CArea.h>LH){
  49.        _y=LH-CArea.h;
  50.        cout << "\nERROR CAMARA 0006: valor superior a lo permitido se le asigna " << _y << "\n";
  51.    }
  52.    CArea.x=_x;
  53.    CArea.y=_y;
  54.    return true;
  55. }
  56. bool CamaraGame::ResizeLimit(int _w,int _h){
  57.    if(_w>=0)LW=_w;
  58.    else {
  59.        LW=0;
  60.        cout << "\nERROR CAMARA 0001: valor inferior a 0, se le asigna 0\n";
  61.    }
  62.    if(_h>=0 )LH=_h;
  63.    else {
  64.        LH=0;
  65.        cout << "\nERROR CAMARA 0002: valor inferior a 0, se le asigna 0\n";
  66.    }
  67.    return true;
  68. }
  69.  
  70. Area CamaraGame::Get(){
  71.    return CArea;
  72. }


En línea

Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746
0xDani


Desconectado Desconectado

Mensajes: 1.077



Ver Perfil
Re: Qué puntos en contra y a favor veis en esta forma de programar?
« Respuesta #1 en: 17 Junio 2012, 20:40 pm »

¿A que te refieres?

Saludos ;D


En línea

I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!

I code for $$$
Hago trabajos en C/C++
Contactar por PM
anonimo12121


Desconectado Desconectado

Mensajes: 1.813


Ver Perfil WWW
Re: Qué puntos en contra y a favor veis en esta forma de programar?
« Respuesta #2 en: 17 Junio 2012, 21:22 pm »

a los mensajes por consola cuando los valores no están en el rango necesario para que todo funcione bien :)
En línea

Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746
0xDani


Desconectado Desconectado

Mensajes: 1.077



Ver Perfil
Re: Qué puntos en contra y a favor veis en esta forma de programar?
« Respuesta #3 en: 17 Junio 2012, 21:38 pm »

Lo cierto es que no se ve muy bien que parametros hay que pasarle a las funciones, sobre todo en camaragame.
En línea

I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!

I code for $$$
Hago trabajos en C/C++
Contactar por PM
overxfl0w13

Desconectado Desconectado

Mensajes: 163



Ver Perfil WWW
Re: Qué puntos en contra y a favor veis en esta forma de programar?
« Respuesta #4 en: 18 Junio 2012, 00:35 am »

xafi, veo demasiados archivos no? No te parece demasiada carga emplear un archivo (area.hpp) únicamente para declarar una estructura? :S

Respecto a lo otro no te puedo ayudar, pero como dice daniyo, son bastante confusos los nombres de los argumentos pasados a las funciones tio xD.

Un saludo y cuidate mucho :)
En línea

[/url]
Foxy Rider


Desconectado Desconectado

Mensajes: 2.407


Deprecated


Ver Perfil WWW
Re: Qué puntos en contra y a favor veis en esta forma de programar?
« Respuesta #5 en: 18 Junio 2012, 11:07 am »

Si tenés muchas estructuras chicas, armate un .hpp con el nombre Types por ejemplo, y poné todo ahí ...
Area diría que la declares clase, le agregues algunos operadores y un constructor, por que vá a permitirte hacer algo como esto : http://publib.boulder.ibm.com/infocenter/comphelp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8a.doc%2Flanguage%2Fref%2Fcplr388.htm

Código
  1. CamaraGame::CamaraGame(int _mw,int _mh,int _x,int _y,int _w,int _h): CArea(_x,_y,_w,_h,_mw,_mh)
  2.  
Y después arrancás a verificar (que también, eso luce bastante "optimizable")

Por cierto, lo de los guiones bajos es algo que se vé feo en este contexto de los parámetros  (yo tenía esa horrible costumbre, pero con variables privadas y que consideraba "privadas" - léase : encapsulamiento se fue de vacaciones - , me dá cáncer recordarlo x'D), te diría que cambies el estilo de nombramiento de variables ... relajalo en parámetros, para los internos de la clase  podés estar prefijeando m, y con eso indicás "mine" como por ejemplo mWidth (tampoco abuse de este prefijo)

Y un consejo más personal? no mezcles idiomas en el código :S

Saludos.
« Última modificación: 18 Junio 2012, 11:12 am por vertexSymphony » En línea

anonimo12121


Desconectado Desconectado

Mensajes: 1.813


Ver Perfil WWW
Re: Qué puntos en contra y a favor veis en esta forma de programar?
« Respuesta #6 en: 18 Junio 2012, 15:29 pm »

La verdad que me hice un lío en los nombres de los parámetros.
Lo  mezclar idioma ya estoy solucionando.

Gracias por los consejos los pondré en práctica.
En línea

Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines