Показать сообщение отдельно

  #9  
Старый 06.07.2009, 23:30
horlyk
Участник форума
Регистрация: 02.12.2007
Сообщений: 132
Провел на форуме:
233095

Репутация: 21
По умолчанию

Вот снова засел за с++, продолжаю обучение...

В общем вопрос состоит в таком: я учу сейчас ссылки и указатели. Теперь пожалуйста, объясните мне, что возвращается в каждой(func и funk2) ф-и и почему. Заранее спасибо.

Код:
#include <iostream>
using namespace std;

class Cat
{
public:
	Cat() { cout << "constructor...\n"; }
	~Cat() { cout << "destructor...\n"; }
	Cat(Cat&) { cout << "copy - constructor...\n"; }
	void SetAge( int age ) { Age = age; }
	int GetAge() const { return Age; }
private:
	int Age;
};


Cat &func(Cat &cat1)
{
	cout << "func...\n";
	cat1.SetAge(5);
	cout << "Age is " << cat1.GetAge() << endl;
	return cat1;
}

Cat *func2(Cat *cat1)
{
	cout << "func2...\n";
	cat1->SetAge(7);
	cout << "Age is " << cat1->GetAge() << endl;
	return cat1;
}

void main()
{	
	cout << "Making a cat1...\n";
	Cat cat1;
	cout << "going to func...\n";
	func(cat1);
	cout << "back to main...\n\n";
	
	cout << "Making a cat2...\n";
	Cat cat2;
	cout << "going to func2...\n";
	func2(&cat2);
	cout << "back to main...\n\n";	
}
 
Ответить с цитированием