Форум программистов, компьютерный форум CyberForum.ru

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

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

Что означает такое обьявление функции? - C++

16.10.2013, 00:05. Просмотров 351. Ответов 3
Метки нет (Все метки)

C++
1
SimpleCat &TheFunction()
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2013, 00:05     Что означает такое обьявление функции?
Посмотрите здесь:

Что такое #, include, что это означает - C++
______

Правильное обьявление функции, что возвращает двумерный массив символов - C++
Есть функция goUP. Как ее объявить так, чтобы она принимала двумерный массив символов и возвращала двумерный массив символов (если можно,...

Что означает знак & в объявлении функции - C++
Здравствуйте, в обучающих статьях о С++ наткнулся на очень интересную синтаксическую конструкцию. Не совсем разобрался с указателями и...

Что означает идендификатор const в обьявлении функции? - C++
Что означает идендификатор const в обьявлении функции? Например: int if_R() const; // ОНА ВОЗВРАЩАЕТ КОНСТАНТУ?????? // и можно...

Что означает const после круглых скобок функции - C++
всем привет. скажите, а что здесь значит const? int func(int var) const { return get; }

Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с файлами? - C++
Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с файлами?

Что такое Функции в C++ - C++
Можете объяснить что такое функции в C++, только подробно. Я не понимаю как они работают и да объясните что такое функции прототипы!...

Что такое рекурсивный тип данных? Что такое конструкция рекурсивного типа? - C++
Что такое рекурсивный тип данных? Что такое конструкция рекурсивного типа?

Что такое ссылки на функции? - C++
Хай. Вопрос в заголовке. Можно, пожалуйста с примером. Спасибо.

Что такое прототип функции? - C++
Зачем нужен прототип функции ведь она и без него прекрасно работает? Если можете объясните как чайнику в подробностях) заранее спасибо...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
xSCJx
22 / 19 / 1
Регистрация: 24.12.2012
Сообщений: 435
16.10.2013, 00:08     Что означает такое обьявление функции? #2
функция возвращяет ссылку на SimpleCat.
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6442 / 3081 / 306
Регистрация: 04.12.2011
Сообщений: 8,482
Записей в блоге: 4
16.10.2013, 04:52     Что означает такое обьявление функции? #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
#include <iostream> // для объекта cout
#include <string> 
 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<<a<<b<<c<<d;
cout<<"The cat "<<cat.cat_name<<" that once had cought a fat rat!"<<endl;
return os;
 }
SimpleCat& foo(){//это метод шутка. Обычно ссылку можно вернуть и через формальный параметр
    //а явный возврат ссылки позволяет функцию использовать как возвращаемое значение слева
    //от операции присваивания
return *this;//
 }
//а опрератор присваивания возвращает ссылку своего типа
SimpleCat &SimpleCat::operator =(const char *cat_name_){
//позволяет писать a=b=c=d;
//лучше конечно присваивание определять для опрерандов одного типа,
//иначе больше подходит конструктор преобразования)
if(cat_name_==0) return *this;
cat_name = cat_name_;
return *this;
}
 };
 
 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";
 }
  enum The_Rat{fat, rat};
 int main()
 {
cout << "main()SimpleCat Frisky;\n";
SimpleCat Frisky;     // Вызываем конструктор раз.
cout<<Frisky<<endl;
Frisky.foo()="Frisky";//так делать не нужно. На то сть оператор присваивания (без него, кстати
//и это не сработает. Или конструктор преобразования.
cout<<Frisky<<endl;
cout<<endl;
system("pause  ");
return fat;
 }
Dimka-novitsek
14 / 14 / 0
Регистрация: 26.04.2012
Сообщений: 1,091
16.10.2013, 11:27  [ТС]     Что означает такое обьявление функции? #4
СПАСИБО!!!
Yandex
Объявления
16.10.2013, 11:27     Что означает такое обьявление функции?
Ответ Создать тему
Опции темы

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