Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<string>
- using namespace std;
- class Person {
- public:
- Person() {
- }
- Person(string firstName, string familyName)
- : mFirstName( firstName ), mFamilyName( familyName ) {
- }
- void setData(string firstName, string familyName) {
- mFirstName = firstName;
- mFamilyName = familyName;
- }
- void printData() const {
- cout << "First name: " << mFirstName << endl;
- cout << "Family name" << mFamilyName << endl;
- }
- Person operator+(const Person& person) const {
- printData();
- return Person(mFirstName + person.mFirstName,
- mFamilyName + person.mFamilyName);
- }
- private:
- string mFirstName;
- string mFamilyName;
- };
- template<typename T, typename S>
- T sum(T a, S b) {
- return a + b;
- }
- template<typename T>
- T max(T a, T b) {
- if (a > b) {
- return a;
- }
- else
- return b;
- }
- template<class T>
- class Table {
- public:
- T get(int index) {
- if (index < itemsCount) {
- return items[index];
- }
- return T{};
- }
- void add(T type) {
- if (itemsCount >= 10) return; // Table full
- items[itemsCount] = type;
- itemsCount++;
- }
- private:
- T items[10];
- int itemsCount = 0;
- };
- int main() {
- int a{ 10 };
- Table<int> luvut;
- luvut.add(30);
- luvut.add(20);
- cout << luvut.get(0) << endl;
- cout << luvut.get(1) << endl;
- Table<Person> henkilot;
- henkilot.add(Person("Pekka", "Virtanen"));
- henkilot.get(0).printData();
- Person pekka("Pekka", "Nieminen");
- Person marja("Marja", "Virtanen");
- Person ville = sum(pekka, marja);
- ville.printData();
- system("pause");
- return EXIT_SUCCESS;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement