Ejemplo n.º 1
0
int main()
{
    Dog vdog;
    Pet vpet;

    vdog.name = "Tiny"; 
    vdog.breed = "Great Dane";
    vpet = vdog; 

    //vpet.breed; is illegal since class Pet has no member named breed

    Dog *pdog;
    pdog = new Dog;
    pdog->name = "Tiny";
    pdog->breed = "Great Dane";

    Pet *ppet; 
    ppet = pdog; 
    ppet->print(); // These two print the same output:
    pdog->print(); // name: Tiny breed: Great Dane
    
    //The following, which accesses member variables directly
    //rather than via virtual functions, would produce an error:
    //cout << "name: " << ppet->name << "  breed: " 
    //     << ppet->breed << endl;
    //generates an error message: 'class Pet' has no member
    //named 'breed' .
    //See Pitfall section "Not Using Virtual Member Functions"
    //for more discussion on this.

    return 0;
}
Ejemplo n.º 2
0
Archivo: oop.cpp Proyecto: irr/c-labs
int main() {
    std::cout << "DOG:" << std::endl;
    Dog myDog;
    myDog.setName("Barkley");
    myDog.setWeight(10);
    myDog.print();
    std::cout << "OWNEDDOG:" << std::endl;
    OwnedDog ownedDog;
    ownedDog.setName("OwnedBarkley");
    ownedDog.setOwner("Ale");
    ownedDog.setWeight(20);
    ownedDog.print(); 
    return 0;
}