:lol: ya me acostumbre a la semántica de C# <_<¿Alguna vez estuviste acostumbrado a la de C++? Segun tus propios mensajes nunca aprendiste POO con C++.
Igual sigo sin ver la logica de comparar el puntero con NULL despues del delete. ¿Para que?:rolleyes:
Los punteros en C/C++ no son exclusivos de POO.
para saber si ya esta o aun esta creada una instancia, supongo.
Ya se que no tiene logica, pero el caso es que estoy haciendo una libreria, y quiero evitar los errores en tiempo de ejecucion y que se muestre un error de que esta haciendo mal el que este usando la libreriaPodes usar la macro que te pase pero justamente es inutil ya que si es una libreria no van a usar tu codigo sino que haran lo que quieran. Incluso podes comprobar que tenes acceso al puntero y ese puntero puede no ser ya mas valido ...
Bueno Diodo, al parecer estas usando generics
1- Me parece más sano que arrojes una excepcion cuando te envien como parametro algo que apunte a NULL.
2- La lista deberias inicializarla en el constructor de la clase, la lista vacia de por si no ocupa nada de memoria, asi que no seria un alto costo tenerla inicializada siempre.
No seria error de la libreria, pero si se diera el caso de que alguien hiciera eso, no estaria de mas que el programa pudiera continuar, hasta donde fuera posible y siempre que no produjera mas errores, y se mostrara una advertenciaTu lista devolveria un puntero que el programa usaria o no, vaya uno a saber. El programa no es tu responsabilidad
Soy novato en esto de crear una libreria , asi que es posible que me este pasando en el nivel de intervencionismo :P o quizas quiera hacer una libreria para dummies
No seria error de la libreria, pero si se diera el caso de que alguien hiciera eso, no estaria de mas que el programa pudiera continuar, hasta donde fuera posible y siempre que no produjera mas errores, y se mostrara una advertenciaEn mi opinión siempre que se hace un componente para uso de otra persona que no fue el que lo creo hay que asegurarse de controlar la mayor cantidad de situaciones posibles...
Soy novato en esto de crear una libreria , asi que es posible que me este pasando en el nivel de intervencionismo :P o quizas quiera hacer una libreria para dummies
¿Que tal si yo hiciera esto?:scream:Código: Text
char jaja[] = "hoooola"; clase *z = (clase*)&jaja; addNode(z);
Ah y la verdad que ese codigo sea o no valido en otros lenguajes es totalmente redundante en este subforo.No para mí ;)
Claro, eso se puede hacer si alguien quiere hacer un uso malintencionado o fuera de lo normal para lo cual se hizo la libreria, pero de todas formas, no por el hecho que se pueda entrar a la casa por la ventana se va a dejar la puerta sin seguro.Ese era un caso EXTREMO, mira el otro que es mucho mas probable que pase:
Entendido, gracias por la ayuda.De nadas.
No para mí ;)Este es el subforo de C/C++ pero viendo como permitis que hablen de cualquier otro lenguaje no me extraña que respondas esa idiotez. Es totalmente redundante que ese codigo no sea valido en Perl, en ADA o en lo que sea.
Es redundante para ti que no sabes C#, pero para Mi y para Diodo (supongo) que si sabemos C# no es una idiotez... solo es una idiotez para tí porque tu no sabes del tema.Cita de: "JuanK"No para mí ;)Este es el subforo de C/C++ pero viendo como permitis que hablen de cualquier otro lenguaje no me extraña que respondas esa idiotez. Es totalmente redundante que ese codigo no sea valido en Perl, en ADA o en lo que sea.
Es redundante para ti que no sabes C#, pero para Mi y para Diodo (supongo) que si sabemos C# no es una idiotez... solo es una idiotez para tí porque tu no sabes del tema.Es redundante por no pertencer a este subforo y al tema tratado como lo seria que yo me pusiera a decir que ese no es valido para assembly.
Por otro lado para mi como moderador del foro de C/C++ no es una idiotez meter temas de otros lenguajes aca, el foro es para debatir acerca de puntos de vista, opiniones, conocimientos etc no para sezgar y discriminiar los comentarios al gusto particular de alguien. Si algún thread es especifico de un lenguaje diferente de C++ si seria movido, de lo contrario no.
En cierta medida creo que es bueno el facilitar el uso de la libreria, y evitar que el usuario haga cosas para las que no esta diseñada.Mejor podrias investigar sobre Smart Pointers B)
Sigo investigando sobre el tema, parece el meollo del asunto son los:
Dangling Pointers (http://en.wikipedia.org/wiki/Dangling_pointer)
Mejor podrias investigar sobre Smart Pointers
Lo es, te guste o no. Y el moderador del foro de C/C++ deberia saber C++ pero bueno, solo hay lo que hay.
Ok ya llegue a esa parte, pero prefiero empezar por saber a que se debe el problema y despues ver las posibles soluciones.
Es verdad.Yo propongo este moderador:
Aunque no se si tendra mucho tiempo libre ..... :devil:
Lo es, te guste o no. Y el moderador del foro de C/C++ deberia saber C++ pero bueno, solo hay lo que hay.
si de programacion de C++ para windowsEso no existe.
me refiero a programar haciendo uso de la API de windows, si bien lo he hecho en varias ocaciones siempre me pareció una perdida de tiempo porque no me interesa y nunca le dedique demasiado a ese tema.-OK, pero esta orientada a C la API de Windows.