0 / 0 / 1
Регистрация: 29.01.2012
Сообщений: 34
1

Объявление класса после инициализации

07.07.2012, 15:02. Показов 660. Ответов 2
Метки нет (Все метки)

Подскажите возможно ли объявление класса в такой последовательности, чтобы вместо объявления написать class car;, просто видел в некоторых исходниках такое объявление, но не уверен что оно для этого применяется. Сам код не компилится.
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
#include <iostream>
 
using namespace std;
 
class car;
 
int main()
{
    car ob("audi", 200);
    ob.show_car();
    system("pause");
    return 0;
}
 
class car {
    char* m_model;
    int m_speed;
public:
    car(char* model, int speed) {
        m_model = model;
        m_speed = speed;
    }
 
    void show_car() { cout << m_model << " " << m_speed << "\n"; }
};
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.07.2012, 15:02
Ответы с готовыми решениями:

Объявление объекта класса fstream в качестве статической компоненты другого класса
Доброго времени суток. Есть задание, в котором говорится &quot;...Перепишите программы из упражнений 4 и...

Создать объявление класса и разработать программу-драйвер, которая продемонстрирует работу класса.
Класс Triangle (треугольник). Класс хранит Декартовы координаты трех углов треугольника....

Объявление объекта одного класса в описании другого класса
Здравствуйте. Почему при объявлении Student s в классе Teacher не возникает ошибки? Ведь такой...

Объявление дружественного класса внутри класса
class A{ friend class B{ B(A &amp;a); } } Подскажите пожалуйста, такое...

2
В астрале
Эксперт С++
8042 / 4799 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
07.07.2012, 15:53 2
defi, На С++ вообщем-то никак, я одном исходнике так не сделаешь, даже использования указателей не поможет (ибо прежде чем использовать указатель, его все таки надо создать).
1
387 / 151 / 16
Регистрация: 12.05.2011
Сообщений: 450
07.07.2012, 16:03 3
C++
1
class car;
это forward declaration,
используется для того, чтобы сообщить компилятору, что car -- это имя какого-то класса. После этого это имя можно использовать, например, для объявления функций, принимающих car в качестве аргумента.
C++
1
2
3
class mechanic {
    void repair(car &);
};
Но работать с объектами этого класса можно будет только после того, как класс будет объявлен целиком.
Forward declaration используется, когда есть два класса, зависящих друг от друга и для полного объявления каждого из них компилятору нужно знать о существовании другого.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.07.2012, 16:03
Помогаю со студенческими работами здесь

Порядок инициализации членов класса
Здравствуйте форумчане. Столкнулся с проблемой. Не могу найти доходчивой статьи на данный вопрос...

Объявление класса Patient
Доброго времени суток! Есть программа, в ней несколько файлов. Есть класс Patient, на который...

Объявление шаблонного класса
Как объявить шаблонный класс?

Объявление объекта класса
Доброе время суток! Дело вот в чем: В конструкторе c параметрами класса Piramida, мне нужно...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru