Added prototype example.

This commit is contained in:
Ian Dinwoodie
2019-04-29 20:03:11 -04:00
parent 000fd50e14
commit 179751516a

View File

@@ -635,7 +635,54 @@ scratch and setting it up.
#### Programmatic Example #### Programmatic Example
TODO Let's create a sheep class
```cpp
class Sheep
{
public:
Sheep(const std::string& name, const std::string& category)
: name_(name), category_(category)
{
}
void setName(const std::string name)
{
name_ = name;
}
std::string getName(void)
{
return name_;
}
void setCategory(const std::string category)
{
category_ = category;
}
std::string getCategory(void)
{
return category_;
}
private:
std::string name_;
std::string category_;
};
```
Here is how we can clone this object
```cpp
Sheep original = Sheep("Molly", "Mountain Sheep");
std::cout << original.getName() << std::endl; // Output: Molly
std::cout << original.getCategory() << std::endl; // Output: Mountain Sheep
Sheep clone = original;
clone.setName("Dolly");
std::cout << clone.getName() << std::endl; // Output: Dolly
std::cout << clone.getCategory() << std::endl; // Output: Mountain Sheep
```
#### When To Use #### When To Use