No tienes acceso a esta clase

¬°Contin√ļa aprendiendo! √önete y comienza a potenciar tu carrera

Creando nuestro primer objeto

8/16
Recursos

Aportes 10

Preguntas 3

Ordenar por:

¬ŅQuieres ver m√°s aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Me puse a pasar parametros en el metodo de saludo ūüĎÄ.

#include <iostream>
#include <string>

using namespace std;

class Persona {
  public:
  string nombre = "Luis";
  int edad = 22;
  void saludar(string persona) {
    cout << "Soy " << nombre << endl << "¬°Saludos, " << persona << "!" << endl;
  }
};

int main(){
  Persona *persona1 = new Persona();
  Persona *persona2 = new Persona();

  persona2->nombre = "Darkus";

  persona1->saludar(persona2->nombre);

  return 0;
}

Les dejo el codig√≥ ūüėÉ

#include <iostream>
#include <string>

using namespace std;

class Person {
public:
  string name = "Zero";
  int age = 14;
  void say_hi() { cout << name << endl; }
  void say_age() { cout << age << endl; }
};

int main() {
  Person p = Person();
  p.say_hi();
  p.say_age();
}

un ejemplo sin punteros

#include <iostream>
#include <conio.h>
#include <stdlib.h>

using namespace std;
class Persona {
public:
	int edad = 18;
	string nombre = "pepito";
	void saludar() {
		cout << "hola soy " << nombre << " y estoy saludando" << endl;
	}
	void despedida() {
		cout << "Me despido atte: " << nombre << endl;
	}
};
	int main() {
		Persona p = Persona();
		Persona p2 = Persona();
		Persona pokemon = Persona();
		p2.nombre = "parker";
		pokemon.nombre = "pikachuuu";
		cout << p.nombre << endl; // pepito
		cout << p.edad << endl;   // 18
		p.saludar();              //hola soy pepito y estoy saludando
		p2.saludar();             //hola soy parker y estoy saludando
		pokemon.saludar();        //hola soy pikachuuu y estoy saludando
		p.despedida();            //Me despido atte: pepito
		p2.despedida();           //Me despido atte: parker
		pokemon.despedida();      //Me despido atte: pikachuuu
	getch();
};

C√≥digo con punteros ūüƆ:

#include <iostream>
#include <string>

using namespace std;

class Person {

    public:
        string name = "";
        int age = 0;
    
    void greet() {
        cout << "Hello " << this->name << "!";
    }

};

int main() {

    Person *person = new Person();

    person->name = "Bart";
    person->age = 10;

    person->greet();

} 

Podemos reutilizar el puntero para crear nuevos objetos de esa clase ūüėĀ

#include<iostream>
using namespace std;

class Persona{
    private:
        string nombre;
        int edad;
    public:
        void mostrar(){
            cout<<nombre<<endl;
            cout<<edad<<endl;
        }
        void saludar(){
            cout<<"Hola mi nombre es "<<nombre<<endl;
        };
        void asignarDatos(string n, int e){
            nombre = n;
            edad = e;
        }
};


int main(){
    system("cls"); //para limpiar pantalla si estas en windows o "clear" si es Linux

    Persona per; //inicia la persona de manera estatica
    per.asignarDatos("Lucas",28);
    per.mostrar();
    per.saludar();
    cout<<endl;
    /*Inicia un array de Puntero de tipo Persona
    y el operador new crea el objeto de manera
    dinamica en memoria, sera el lugar donde el 
    puntero almacene los datos que reciba. */
    Persona *p= new Persona();
    p->asignarDatos("Ramon",25);
    p->mostrar();
    p->saludar();
    cout<<endl;
    /*Creamos una objeto persona extra, usando el mismo puntero y la memoria dinamica,
    sin necesidad de asignarle un nombre al objeto nuevo*/
    p= new Persona();
    p->asignarDatos("Pedro",26);
    p->mostrar();
    p->saludar();

    return 0;
}

Mis notas de la clase:

  1. Un objeto es una entidad que puede existir en el mundo físico o no. Y que tiene una clase (cierto tipo de objeto), nombre (identidad), propiedades (características descriptivas), métodos (cosas que el objeto puede hacer).
  2. POO es una serie de conceptos que se van a implementar para saber como trabajar con el sofware.
  3. Una¬†estructura¬†y una¬†clase¬†son b√°sicamente lo mismo. La diferencia entre ellas es que que los miembros de una¬†estructura¬†son¬†p√ļblicos¬†por¬†defecto¬†y en una¬†clase¬†lo son¬†privados.
  4. La diferencia de los objetos y las estructuras es que a los objetos se les puede a√Īadir comportamiento.
  5. Cada nuevo objeto almacena su propia información.

Hola! les dejo aqu√≠ mi c√≥digo de la clase, espero les ayude ūüę°

#include <iostream>
#include <string>
using namespace std;
class Persona{
public:
    string nombre = "Emiliano";
    int edad = 19;
    void saludar(string nombreDos) {
        cout << "Hola " + nombreDos + "! Gusto en conocerte"<< endl;
    }
};

int main() {
    Persona *p = new Persona();
    cout << "Hola! me llamo " + p->nombre + " y tengo " << p->edad << " a√Īos."<<endl;
    Persona *p2 = new Persona();
    p2->nombre = "Sara";
    p2->edad = 18;
    cout << "Cómo te llamas? " << endl;
    p->saludar(p2->nombre);
}

Les comparto el código que realice con este ejercicio jeje:

#include <iostream>
#include <string>

using namespace std;

class persona {
public:
    string nombre = "";
    int edad = 0;
    void saludar () {
        cout << "Hola, soy "<<nombre<<", y tengo "<<edad<<" a√Īos.";
    }
};

int main() {
    persona p = persona ();
    cout << "Cu√°l es tu nombre? ";
    cin >> p.nombre;
    
    cout << "Cu√°l es tu edad? ";
    cin >> p.edad;
    
    p.saludar();
}

comparto mi codigo:

#include <iostream>
#include <string>

using namespace std;

class Persona
{
    public: 
        string nombre;
        int edad;

        void saludar()
        {
            cout << "Hola, mi nombre es: " << nombre << " y tengo: " << edad  << " a√Īos" << endl;
        }
};

int main()
{
    Persona p1 = Persona();
    p1.nombre = "Maria";
    p1.edad   = 25;
    cout << "nombre: " << p1.nombre << endl;
    cout << "edad:   " << p1.edad << endl;
    p1.saludar();
    cout << endl;

    Persona *p2  = new Persona();
    p2->nombre = "Pedro";
    p2->edad   = 38;
    cout << "nombre: " << p2->nombre << endl;
    cout << "edad:   " << p2->edad << endl;
    p2->saludar();
    cout << endl;

    return 0;
}