Me suscribo y leyendo en los comentarios me entero de esta lamentable noticia, con toda mi energia honrare los minutos que dedicaste a ayudar a tanta gente ... siempre recordado !
@@sebaschm618 We no mames. Donde esta mi comentario. Yo habia puesto un comentario desde otra cuenta. n el que decia. Ah no pero se parecen. Descansa en paz amigo >'C
Justo este ejercicio me salio en la tarea, una vez mas salvando el dia profe, ni de rodillas soy digno de estar ante ti. No se muere quien se va solo se muere quien se olvida. QEPD
Todavia no soy digno de estar frente al alma de esta persona, pero algun dia mirare atras y ahi estara, aquel hombre que no descanzo ni en su lecho de muerte con el fin de guiar a otros como un verdadero lider, un verdadero profesor, un verdadero maestro
Alejandro, donde quiera que estes, que sepas que se notaba tu amor por la programacion y la enseñanza, hoy me ayudaste a mi, en el futuro ayudaras a mucha gente como yo. Muchas gracias por todo, descansa en paz.
Gracias a tus videos es que muchos de nosotros hemos logrado comprendero y aprender muchisimas cosas. En donde quiera que te encuentres espero que sigas programando y ayudando a mucha gente. Gracias ProgramacionATS
Acabo de enterarme de que Alejandro ya no está entre nosotros. Recordaré sus palabras: "Si se puede imaginar, se puede programar". Muchas gracias por el curso.
En punteros tipo estructura, el operador de "desreferencia" es ->, es el equivalente a usar * en tipos de variables común no estructurales, de ahí que para el vector se utilice. De manera similar se utiliza en el puntero this. Aprovecho para desear que nuestro amigo Alejandro esté descansando en paz, ayudó sin ánimos de lucro a mucha gente. Paz amigo!
#if 0 El Polimorfismo (implementado en C++ con funciones virtual es) es la tercera característica esencial de un lenguaje orientado a objetos, después de la abstracción de datos y la herencia. Una función virtual es una función miembro que se espera volver a definir en clases derivadas. Cuando se hace referencia a un objeto de clase derivada mediante un puntero o una referencia a la clase base, se puede llamar a una función virtual para ese objeto y ejecutar la versión de la clase derivada de la función. Las funciones virtuales garantizan que se llame a la función correcta para un objeto, con independencia de la expresión utilizada para llamarla. Supongamos que una clase base contiene una funcion declarada como virtual y una clase derivada define la misma funcion. La funcion de la clase derivada se invoca para los objetos de la clase derivada, aunque se llame mediante un puntero o una referencia a la clase base. #endif #include #include using namespace std; class Persona { private: string nombre; int edad{}; public: // Metodos Persona(string, int); /* ƒuncion virtual de Polimorfismo La palabra clave virtual se usa para modificar una declaración de método, propiedad, indizador o evento y permitir que se invalide en una clase derivada */ virtual void mostrar(); }; Persona::Persona(string _nombre, int _edad) { nombre = _nombre; edad = _edad; } void Persona::mostrar() { cout
/*Ejercicio 4: Crear un programa en c++ que tenga la siguiente jerarqui de clases y hacer polimorfismo con el metodo comer().*/ #include #include #include using namespace std; class Animal{ private: string nombre; int edad; public: Animal(string, int); virtual void comer(); }; Animal::Animal(string _nombre, int _edad){ nombre = _nombre; edad = _edad; } void Animal::comer(){ cout
Broo me han servido mucho tus vídeos así que desde ya muchas gracias. Quería pedirte: Si podrías hacer un vídeo de objetos pero ingresando 'n' cantidad de objetos de una misma o varias clases por teclado, y una funcion que muestre esa 'n' cantidad de objetos creados (similar a estructuras).
buenas, una pregunta. En que casos se cumple polimorfismo y que casos se cumple sobreescritura? los veo muy parecidos a ambos. Teniendo en cuenta que el metodo de la clase base puede ser abstracto, virtual o concreto
Hola! Muchas gracias por el video. Lo que no entiendo aqui es cual es la ventaja de usar un puntero en vez de un vector normal y corriente. Alguien podría explicármelo?
hola, necesito ayuda por favor es algo muy sencillo pero lo que pasa que me dan lo que tengo qu everificar y agregaar comentarios de las funciones y donde se declaran las clases ahí no es el problema s ino que me dice que tengo que compilar pero faltan cosas que agregar por que me marca error me piden que compile y ejecute este programa #include #include using namespace std; class Persona {//se declara la clase base llamada persona public: Persona(char *n) {strcpy(nombre, n); } virtual void VerNombre() { cout
Hola 👋 pregunta, quisiera saber cómo asignar un objeto por medio de una función, ejemplo objeto_add(new object(x,y,w,h)); Y qué esto objestos se guarden dentro de una vector puntero
compiler.cpp: In function 'int main()': compiler.cpp:54:52: error: 'Persona' is an inaccessible base of 'artista' 54 | vector[0]= new artista("alejan", 60, "corredor"); | ^ ya no se que hacer según yo e código esta bien pero sigue si dejame compilar
usas cout para decir que quieres ingresar, y cin para guardar las variables pedidas, luego usas el consructor pero con las variables pedidas por pantalla
No pude asignar un objeto Alumno ni Profesor a un apuntador Persona, aunque Alumno y Profesor son de la clase Persona. ¿Alguien sí pudo o tuvo un problema similar?
Buen trabajo para aprendizajes basicos, pero yo quiero preguntarle a alguien que sepa mucho del tema de programacion orientada, como seria esta clase de programa en la vida real, ya que el usuraio que quiera utilizar un desarrollo. no tendria que ver esa persona tu codigo, tendria que hacer digitaciones en consola, por ejemplo en el caso de un colegio donde tendrias mas de 5000 registros por estudiantes y demas atributos.. como se haria un programa con interfaz para el usuario y conectarlos en base de datos. no estoy pidiendo que alquien me lo haga, simplemente quisiera que me indicara en que libros o que videos me explicarian detalladamente ese tema.
Me suscribo y leyendo en los comentarios me entero de esta lamentable noticia, con toda mi energia honrare los minutos que dedicaste a ayudar a tanta gente ... siempre recordado !
Descansa en paz amigo, me enseñaste mucho y siempre voy a estar agradecido de eso
espera..... falleció?
@@sebastianvazquezvelazquez5074 si
@@sebaschm618 We no mames. Donde esta mi comentario. Yo habia puesto un comentario desde otra cuenta. n el que decia. Ah no pero se parecen. Descansa en paz amigo >'C
@@darthvader8469 osea no se murio?
@@josechacon9322 Está muerto...callaros ya
Justo este ejercicio me salio en la tarea, una vez mas salvando el dia profe, ni de rodillas soy digno de estar ante ti. No se muere quien se va solo se muere quien se olvida. QEPD
El profesor lo agarro de aca probablemente, mi profesor enseña con este canal xD
Todavia no soy digno de estar frente al alma de esta persona, pero algun dia mirare atras y ahi estara, aquel hombre que no descanzo ni en su lecho de muerte con el fin de guiar a otros como un verdadero lider, un verdadero profesor, un verdadero maestro
Muchas Gracias por tu conocimiento Alejandro! Siempre te recordare, me has enseñado muchisimo con este curso! Que en paz descances! :'(
Se murió?
@@josebueno9911 si, el año pasado. (((
@@julianluk es enserio???...🥺🥺😓
Alejandro, donde quiera que estes, que sepas que se notaba tu amor por la programacion y la enseñanza, hoy me ayudaste a mi, en el futuro ayudaras a mucha gente como yo. Muchas gracias por todo, descansa en paz.
Gracias Alejandro...aprendo muchísimo de tus videos....Descansa en paz... Dios te tiene en su gloria.
Siempre con toda la actitud de enseñar, ya casi un año de tu partida pero te recordaremos siempre. Buena travesía Alejandro!!!
Gracias a tus videos es que muchos de nosotros hemos logrado comprendero y aprender muchisimas cosas. En donde quiera que te encuentres espero que sigas programando y ayudando a mucha gente. Gracias ProgramacionATS
buen trabajo entendí mas que en todo el semestre
same
Seniores y senioras, fue un honor seguir este curso con ustedes. Me voy corriendo a Python y a mi libro de Estructuras de Datos. Chao.
jajajaja xD !!!
Acabo de enterarme de que Alejandro ya no está entre nosotros. Recordaré sus palabras: "Si se puede imaginar, se puede programar". Muchas gracias por el curso.
En punteros tipo estructura, el operador de "desreferencia" es ->, es el equivalente a usar * en tipos de variables común no estructurales, de ahí que para el vector se utilice. De manera similar se utiliza en el puntero this.
Aprovecho para desear que nuestro amigo Alejandro esté descansando en paz, ayudó sin ánimos de lucro a mucha gente. Paz amigo!
#if 0
El Polimorfismo (implementado en C++ con funciones virtual es) es la tercera característica esencial de un lenguaje orientado a objetos, después de la abstracción de datos y la herencia.
Una función virtual es una función miembro que se espera volver a definir en clases derivadas. Cuando se hace referencia a un objeto de clase derivada mediante un puntero o una referencia a la clase base, se puede llamar a una función virtual para ese objeto y ejecutar la versión de la clase derivada de la función.
Las funciones virtuales garantizan que se llame a la función correcta para un objeto, con independencia de la expresión utilizada para llamarla.
Supongamos que una clase base contiene una funcion declarada como virtual y una clase derivada define la misma funcion. La funcion de la clase derivada se invoca para los objetos de la clase derivada, aunque se llame mediante un puntero o una referencia a la clase base.
#endif
#include
#include
using namespace std;
class Persona
{
private:
string nombre;
int edad{};
public: // Metodos
Persona(string, int);
/* ƒuncion virtual de Polimorfismo
La palabra clave virtual se usa para modificar una declaración de método, propiedad, indizador o evento y permitir que se invalide en una clase derivada */
virtual void mostrar();
};
Persona::Persona(string _nombre, int _edad)
{
nombre = _nombre;
edad = _edad;
}
void Persona::mostrar()
{
cout
Gracias por hacer estos videos, me subscribo... Saludos desde Puerto Rico...
Gracias amigo siempre estarás presente
Fuiste un grande DEP dude❤️
Me sirvió bastante este vídeo ,justo tengo examen de programación.
Recién me enteré de que falleció hace unos años. Fue uno de los grandes.
Excelente vídeo, muy buen material, saludos desde México...
Descansa en paz, gracias por el curso :D
descansa en paz :"( gracias por haber ayudado tanto :")
/*Ejercicio 4: Crear un programa en c++ que tenga la siguiente
jerarqui de clases y hacer polimorfismo con el metodo comer().*/
#include
#include
#include
using namespace std;
class Animal{
private:
string nombre;
int edad;
public:
Animal(string, int);
virtual void comer();
};
Animal::Animal(string _nombre, int _edad){
nombre = _nombre;
edad = _edad;
}
void Animal::comer(){
cout
Será muy interesante que subas el cpp de cada ejercicio Alejandro. Saludos
Broo me han servido mucho tus vídeos así que desde ya muchas gracias.
Quería pedirte: Si podrías hacer un vídeo de objetos pero ingresando 'n' cantidad de objetos de una misma o varias clases por teclado, y una funcion que muestre esa 'n' cantidad de objetos creados (similar a estructuras).
Dios te tenga en su gloria
Buen Rocksito ahí al final
Buen video, podrias explicar un poquito para que se usa return *this y un poquito de sobrecarga de signos (+-()[]) para una clase.
No jodas Luis
luis ponce khe pedo jajajajaj
@Sintaxys - Tecnologia/Promos & Gaming que paso ?
Gracias amiga ahora ya todo es más claro
Ya falleció we
buenas, una pregunta. En que casos se cumple polimorfismo y que casos se cumple sobreescritura? los veo muy parecidos a ambos. Teniendo en cuenta que el metodo de la clase base puede ser abstracto, virtual o concreto
Buen vídeo. No faltó un delete vector para no gastar memoria en el heap? Ya que usamos new en el array...
Eres un grande gracias por todo
buen servicio con el "Alt+f4"
Buenísimo video!! Al igual que los 131 ejercicios anteriores jajajaja
PD: ¿Cómo se llama la musica del final?
Hard story - santiago del porro :v
@@artemioharoldperlaciosluqu5471 Cool, no suelo encontrar con otras personas que posean el mismo apellido que yo xd
Muchas gracias
Simplemente gracias.
excelente Alejandro un saludo
Gracias
Maestro en paz descanses, valla que aprendí contigo, ahora veo otros códigos tienen mucho mas sentido.
Que buena forma de programar :D
Lo haces parecer tan fácil!
hola
como estas profe?
enseñas el tema de operator overloading ?
espero tu respuesta muchas gracias
:,,3
F
DEP , te vamos a extrañar
Se murió?
@@josebueno9911 si, le dio cáncer
Excelente explicación
Excelente nivel
Buena Explicacion Ale!!
Oie y para alguna duda en especifico no tiene algun correo,
donde me puedas tu dar tu apoyo!!
Tienes demasiado conocimiento para solo tener 20 años.. Cuando yo los cumpla quisiera ser como tú.
ya no existe, falleció hace un año :(
podrías hacer un vídeo de persistencia de la información?? archivos .txt y .dat?? sería genial
excelente explicación, se puede hacer una conxión en una pagina html?
Crack!!! Gracias
excelente video
Puedes hacer un video del uso del this y sobrecarga de operadores?
puedes hacer un programa de tes de preguntas de que tan bueno es en deportes
Hola! Muchas gracias por el video. Lo que no entiendo aqui es cual es la ventaja de usar un puntero en vez de un vector normal y corriente. Alguien podría explicármelo?
Creo que se usan punteros en el ejemplo para asignación dinámica de memoria en el heap por medio del operador New.
Acá pueden ver mas detallado la explicación de uso de clases abstractas y herencia ruclips.net/video/0DF43G9r6ewv/видео.html=0DF43G9r6ew
No entendí por qué el objeto lo inició como puntero y con un vector
Alguno tan amable de explicarme?
Eras un crack tío, qué pena.
Excelente!!!
me ayudas un buen, gracias ....
hola, necesito ayuda por favor es algo muy sencillo pero lo que pasa que me dan lo que tengo qu everificar y agregaar comentarios de las funciones y donde se declaran las clases ahí no es el problema s ino que me dice que tengo que compilar pero faltan cosas que agregar por que me marca error
me piden que compile y ejecute este programa
#include
#include
using namespace std;
class Persona {//se declara la clase base llamada persona
public:
Persona(char *n) {strcpy(nombre, n); }
virtual void VerNombre() { cout
tienes que poner "alt+f4", se pone 4k
Jaja tonto
XD
No jaja encerio te ves estupido poniendo eso
No Manchester Fallecio?
Me sigues enseñando hasta ahora ....
👍👍👍
Yo uso visual studio 2015, y al momento de mostrar los atributos tipo string, me bota error, dice: "ningún operador "
Jajaja después de un mes, pero a ver si aún lo necesitas. Prueba con escribir:
#include
A mi me paso lo mismo que a Nicolas, pero fui tan imbecil de poner #include hasta q me di cuenta jaja
Hola 👋 pregunta, quisiera saber cómo asignar un objeto por medio de una función, ejemplo objeto_add(new object(x,y,w,h));
Y qué esto objestos se guarden dentro de una vector puntero
Fallecio hace 2 años amigo, lo siento
@@lestergabriel9414 pará! Quien falleció hace dos años? Igual ya pude resolver la pregunta
@@sedten9750 Nuestro querido profesor ats.
También pude resolver la pregunta. Siento mucho lo del profesor
Listo para mi examen
ejercicio 4:
#include
using namespace std;
//clase ANIMAL
class ANIMAL{
private:
string nombre;
int edad;
public:
ANIMAL(string,int);
virtual void comer();
};
//contructor ANIMAL
ANIMAL::ANIMAL(string _nombre,int _edad){
nombre=_nombre;
edad=_edad;
}
//metodo comer
void ANIMAL::comer(){
cout
No creo que en el método comer vaya eso
Excelente videooo!!
Necesito la transcripcion de este codigo xfa!!!
Hola :) claro, te lo paso por fb
Graciaaaaaaaaaaas! :)
tienes aun la transcripción ???, si la tienes me la puedes enviar por favor. correo: simoncavieresmeneses@gmail.com
@@simoncavieres5200 te lo pasaron ¿?
@@nicolasolvera2106 si amigo muchas gracias !
habra curso de c#?
como le aumentó sobrecargas
Alguien tiene el código de este ejercicio? Lo copie tal cual pero me da un error.,es para realizar una comparación. Gracias
Hace un año dejaron el código del ejercicio en los comentarios.
Te amo
puedes programar separando en archivos como main,.cpp,.h
compiler.cpp: In function 'int main()':
compiler.cpp:54:52: error: 'Persona' is an inaccessible base of 'artista'
54 | vector[0]= new artista("alejan", 60, "corredor");
| ^
ya no se que hacer según yo e código esta bien pero sigue si dejame compilar
una pregunta quiero ingresar datos mediante la pantalla como lo puedo hacer?
usas cout para decir que quieres ingresar, y cin para guardar las variables pedidas, luego usas el consructor pero con las variables pedidas por pantalla
Descansa en paz u_u
listo
#include
#include
#include
#include
#include
#define length(x) (sizeof(x)/sizeof(x[0]))
using namespace std;
//prototipo
class animal{
private:
string nombre;
int edad;
string comidad;
public:
animal(string,int,string);
virtual void comer();
};
animal::animal(string _nombre,int _edad,string _comidad){
nombre=_nombre;
edad=_edad;
comidad=_comidad;
}
void animal::comer(){
cout
Que gente no mas vio arboles listas pilas dejo de hacer ejercicios
😂😂
😂😂
El que quiere aprender
Quiere aprender
jajajajajaja sabes xd
aun no entiendo mucho las listas enlazadas y los arboles...
No pude asignar un objeto Alumno ni Profesor a un apuntador Persona, aunque Alumno y Profesor son de la clase Persona. ¿Alguien sí pudo o tuvo un problema similar?
rest in power
ats es alejandro taboada sanchez
Así es ;)
soy intejilente XD
que programa usas ?
parece ser code blocks
Es Dev-c++
Dev C++
Y si quiero heredar del hijo?
Nicolas Rene En el ejercicio anterior prácticamente necesitas heredar de una clase hija. Es exactamente lo mismo
Quien es maria? :V
ya te has ido y lamentamos haberte perdido :c RIP
[Error] 'Persona' is an inaccessible base of 'Alumno'??
que procede con este error??
borra system32
Buen trabajo para aprendizajes basicos, pero yo quiero preguntarle a alguien que sepa mucho del tema de programacion orientada, como seria esta clase de programa en la vida real, ya que el usuraio que quiera utilizar un desarrollo. no tendria que ver esa persona tu codigo, tendria que hacer digitaciones en consola, por ejemplo en el caso de un colegio donde tendrias mas de 5000 registros por estudiantes y demas atributos.. como se haria un programa con interfaz para el usuario y conectarlos en base de datos. no estoy pidiendo que alquien me lo haga, simplemente quisiera que me indicara en que libros o que videos me explicarian detalladamente ese tema.
Te recomiendo ir a stackoverflow, acá no encontrarás mucha ayuda porque se viene a aprender lo básico.
te gusta el rock vdd??
Si :D jaja
igual chocalas
Paz en tu tumba :(
Aquí hice pero utilizando clases internas en un proyecto:
Archivo polimorfismo.h
#ifndef POLIMORFISMO_H_INCLUDED
#define POLIMORFISMO_H_INCLUDED
#include
#include
class SeresVivos {
private:
public:
class Animal {
private:
std::string especie;
std::string clasificacion;
public:
Animal(std::string,std::string);
virtual void comer();
};
class Humano : public Animal {
private:
std::string nombre;
std::string nacionalidad;
int edad;
std::string ocupacion;
public:
Humano(std::string,std::string,std::string,std::string,int,std::string);
void comer();
};
class Perro : public Animal {
private:
std::string nombre;
int edad;
public:
Perro(std::string,std::string,std::string,int);
void comer();
};
};
SeresVivos::Animal::Animal(std::string _especie, std::string _clasificacion) {
especie = _especie;
clasificacion = _clasificacion;
}
void SeresVivos::Animal::comer() {
std::cout
cout
#include
#include
#include
#include
using namespace std;
class Animal{
private:
string nombre;
int edad;
string raza;
public:
Animal(string,int,string);
virtual void Comer();
};
class Humano : public Animal{
private:
string Hcomer;
public:
Humano(string,int,string,string);
void Comer();
};
class Perro : public Animal{
private:
string Pcomer;
public:
Perro(string,int,string,string);
void Comer();
};
Animal::Animal(string _nombre,int _edad,string _raza){
nombre = _nombre;
edad = _edad;
raza = _raza;
}
void Animal::Comer(){
cout
Gracias we. Aunque no lo valla a usar 7u7
RIP
7:35 missclick en el constructor de profesor, quedó mal hecho
#include
#include
using namespace std;
class Persona {
public:
Persona(char *n) { strcpy(nombre, n); }
void VerNombre() { cout
f
Listo :D
:'D YaCasi
#include
using namespace std;
class Animal{
private:
string nombre,sexo;
int edad;
public:
Animal(string,string,int);
virtual void mostrar();
};
class Humano: public Animal{
private:
string dni,nacionalidad;
public:
Humano(string,string,int,string,string);
void mostrar();
};
class Perro: public Animal{
private:
string raza,duenio;
public:
Perro(string,string,int,string,string);
void mostrar();
};
Animal::Animal(string _nombre,string _sexo,int _edad){
nombre=_nombre;
sexo=_sexo;
edad=_edad;
}
Humano::Humano(string _nombre,string _sexo,int _edad,string _dni,string _nacionalidad) : Animal(_nombre,_sexo,_edad){
dni=_dni;
nacionalidad=_nacionalidad;
}
Perro::Perro(string _nombre,string _sexo,int _edad,string _raza,string _duenio): Animal(_nombre,_sexo,_edad){
raza=_raza;
duenio=_duenio;
}
void Animal::mostrar(){
cout
En velocidad 0.75 se capta mejor (habla demasiado rápido)
Amigo, podrias ayudar a mi amigo que es bien pendejo, osea ni escribir bien puede ya alv
#include
#include
using namespace std;
class Animal{
private: //atributos.
string nombre;
int edad;
public: //metodos.
Animal(string,int);//constructor.
virtual void comer();
virtual void dormir();
};
Animal::Animal(string _nombre,int _edad){
nombre=_nombre;
edad=_edad;
}
void Animal::comer(){
cout