Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Dimka-novitsek
14 / 14 / 0
Регистрация: 26.04.2012
Сообщений: 1,091
#1

Обьясните программу - C++

15.10.2013, 00:49. Просмотров 252. Ответов 2
Метки нет (Все метки)

Обьясните пожалуста как и что делает эта программа и почему она это делает.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
// Листинг 9.10.
 // Передача указателей на объекты
 
#include <string> 
#include <iostream> // для объекта cout
using namespace std;
 
#include<iomanip>
//Этот файл содержит большую часть манипуляторов C++. Если вы не знаете, что такое манипулятор, не беспокойтесь. Просто подключите это файл вместе с iostream, хуже не станет.
#include<fstream> 
//Подключается при работе с файлами.
 
 
 class SimpleCat
 {
public:
SimpleCat (); // конструктор
SimpleCat(SimpleCat&); // конструктор-копировщик
 ~SimpleCat(); // деструктор
 };
 
 SimpleCat::SimpleCat()
 {
cout << "Simple Cat Constructor...\n";
 }
 SimpleCat::SimpleCat(SimpleCat&)
 {
cout << "Simple Cat Copy Constructor...\n";
 }
 
 SimpleCat::~SimpleCat()
 {
cout << "Simple Cat Destructor...\n";
 }
 
 SimpleCat Function0ne (SimpleCat theCat);
 SimpleCat* FunctionTwo (SimpleCat *theCat);
 
 int main()
 {
cout << "main()SimpleCat Frisky;\n";
SimpleCat Frisky;     // Вызываем конструктор раз.
 
cout << "main()FunctionOne(Frisky);\n";
Function0ne(Frisky);// Функция FunctionOne, передача как значения. Конструктор копирования вызывается дважды!!!
//И деструктор дважды!!! И функция не распечатывает сообщения коут!!!!!
cout << "main()FunctionTwo(&Frisky);\n";
FunctionTwo(&Frisky); // Функция FunctionTwo, передача как ссылки. Не вызываются конструктор-деструктор!!!
//Печатается коут из функции!!!
system("pause  ");
return 0;
 }
 
// Функция FunctionOne, передача как значения
SimpleCat Function0ne(SimpleCat theCat)
 {
cout << "Function One. Roturning,,,"<<theCat<<"theCat\n";
return theCat;
 }
 
 // Функция FunctionTwo, передача как ссылки
 SimpleCat* FunctionTwo (SimpleCat *theCat)
 {
cout << "Function Two. Returning..."<<theCat;"\n";
return theCat;
 }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2013, 00:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Обьясните программу (C++):

Обьясните где ошибка , и как правильно писать программу! - C++
Дано натуральное число N и вещества х. Вычислить S=∑_(k=1)^N a_k,a_k=√(x^2+〖sin〗^2*k п/4) а вот уже пример из самого алгоритма...

Обьясните. - C++
Прошу помощи. Расскажите пожалуйста по пунктам где и что делает программа, что за функция.Заранее благодарен. #include &lt;stdio.h&gt; int...

обьясните код - C++
обьсните пожалуста код...Каждая строка за что отвечает...а то я не оч понимаю... #include &quot;stdafx.h&quot; #include &lt;fstream&gt; using...

Обьясните задание - C++
Задание 7 Не стал переписывать задание т. к. там пример

Обьясните пожалуйста - C++
/*Эта программа преобразует галлоноы в литрыс помощью чисел с плавающей точкой.*/ #include &lt;iostream&gt; using namespace std; int ...

Обьясните проограмму - C++
Объясните , пожалуйста, подробно каждую строчку. Спасибо. Сама задачка звучит так. Определить разность между наиб. и наим числом...

2
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
15.10.2013, 00:54 #2
Dimka-novitsek, вопрос "почему" является странным... ее создали вы, она поэтому и выполняет. А тут видимо показан пример использования указателей в программах, их различия и тп. В общем как программа демонстрация
0
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6911 / 3189 / 315
Регистрация: 04.12.2011
Сообщений: 8,828
Записей в блоге: 5
15.10.2013, 02:03 #3
Так можно попробовать:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#include <iostream> // для объекта cout
//#include<iomanip>
//Этот файл содержит большую часть манипуляторов C++. Если вы не знаете, что такое манипулятор, не беспокойтесь. Просто подключите это файл вместе с iostream, хуже не станет.
//Интересно, что этот файл можно не подключать, так как он и не используется)))
#include <string> 
#include<fstream> 
//Подключается при работе с файлами.
 using namespace std;
 
 class SimpleCat
 {
string cat_name;
public:
SimpleCat (string cat_name_= "Romuald"); // конструктор
SimpleCat(const SimpleCat&); // конструктор-копировщик
 ~SimpleCat(); // деструктор
 //определите оператор << 
friend ostream& operator << (ostream& os, SimpleCat cat){
cout<<"The cat "<<cat.cat_name<<" that once had cought a fat rat!"<<endl;
return os;
 }
 };
 
 SimpleCat::SimpleCat(string cat_name_)
 {
cat_name=cat_name_;
cout << "Simple Cat Constructor... "<<cat_name<<endl;
 }
 
 SimpleCat::SimpleCat(const SimpleCat& cat)
 {
     if(this != &cat){
cat_name=cat.cat_name;
cout << "Simple Cat Copy Constructor...\n";
     }
 }
 
 SimpleCat::~SimpleCat()
 {
cout << "Simple Cat Destructor...\n";
 }
 
 void Function0ne (SimpleCat theCat);
 void FunctionTwo (SimpleCat *theCat);
 enum The_Rat{fat, rat};
 int main()
 {
cout << "main()SimpleCat Frisky;\n";
SimpleCat Frisky;     // Вызываем конструктор раз.
 
cout << "main()FunctionOne(Frisky);\n";
Function0ne(Frisky);// Функция FunctionOne, передача как значения. Конструктор копирования вызывается дважды!!!
//И деструктор дважды!!! И функция не распечатывает сообщения коут!!!!!
cout << "main()FunctionTwo(&Frisky);\n";
FunctionTwo(&Frisky); // Функция FunctionTwo, передача как ссылки. Не вызываются конструктор-деструктор!!!
//Печатается коут из функции!!!
cout<<endl;
cout<<"---------------------------------"<<endl;
cout<<endl;
cout << "main()SimpleCat Frisk;\n";
SimpleCat Frisk("Frisky is a lazy cat");     // Вызываем конструктор раз.
Function0ne(Frisk);
FunctionTwo(&Frisk);
cout<<endl;
system("pause  ");
return rat;
 }
 
// Функция FunctionOne, передача как значения
void Function0ne(SimpleCat theCat)
 {
cout << "Function One. Roturning,,,"<<theCat;
 
 }
 
 // Функция FunctionTwo, передача как ссылки
void FunctionTwo (SimpleCat *theCat)
 {
cout << "Function Two. Returning..."<<*theCat;"\n";
 
 }
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.10.2013, 02:03
Привет! Вот еще темы с ответами:

Обьясните пожалуйста - C++
struct Test { void test(); }; int main() { Test *ptr = NULL; ptr-&gt;test(); }

обьясните ошибку - C++
#include &lt;stdio.h&gt; #include &lt;string.h&gt; #include&lt;iostream&gt;; using namespace std; int main(void) { setlocale(LC_ALL,&quot;Russian&quot;); ...

Деревья(обьясните) - C++
помогите разобраться с деревьями (с построением и работой над ними) ПЛЗ гарю!!!!!!

Обьясните код - C++
Ребят помогите с обьяснением этой проги !!! #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; using namespace std; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru