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

Двойное объявление класса - C++

Восстановить пароль Регистрация
 
Erjay
0 / 0 / 0
Регистрация: 03.08.2013
Сообщений: 91
06.08.2013, 15:38     Двойное объявление класса #1
Для чего два раза писать class Animal?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Animal;
 
void setValue (Animal&, int);
 
class Animal
{
public:
    Animal();
    ~Animal();
    friend void setValue (Animal&, int);
    int GetWeight () const {return itsWeight;}
    int GetAge ()    const {return itsAge;}
 
private:
    int itsWeight;
    int itsAge; 
};
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
novi4ok
549 / 502 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
06.08.2013, 15:40     Двойное объявление класса #2
перетащи третью строку в самый низ - и можешь обойтись без первой. иначе откуда компилятор узнает, что есть такой сласс?
Erjay
0 / 0 / 0
Регистрация: 03.08.2013
Сообщений: 91
06.08.2013, 15:43  [ТС]     Двойное объявление класса #3
Первая строка нужна для того, чтобы компилятору было понятно, что представляет собой первый аргумент прототипа функции?
novi4ok
549 / 502 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
06.08.2013, 15:50     Двойное объявление класса #4
Цитата Сообщение от Erjay Посмотреть сообщение
Первая строка нужна для того, чтобы компилятору было понятно, что представляет собой первый аргумент прототипа функции?
именно так. если эту ф-ю описать после описания класса, то первая строка не нужна.
Yandex
Объявления
06.08.2013, 15:50     Двойное объявление класса
Ответ Создать тему
Опции темы

Текущее время: 06:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru