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

конструкторы - C++

Восстановить пароль Регистрация
 
Татьяна С
0 / 0 / 0
Регистрация: 20.09.2012
Сообщений: 9
20.09.2012, 20:46     конструкторы #1
У меня вопрос: если программа с конструкторами, то нужно ли создавать объект в программе? И по какому синтаксису вызвать функцию, описанную в классе?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.09.2012, 20:46     конструкторы
Посмотрите здесь:

Конструкторы C++
Конструкторы C++
конструкторы C++
C++ конструкторы
Конструкторы C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
edward_jonson
 Аватар для edward_jonson
157 / 157 / 25
Регистрация: 23.02.2011
Сообщений: 388
20.09.2012, 20:54     конструкторы #2
Конструктор вызывается при создании объекта.
Через оператор ".". Если же используете указатель на объект, то через "->".
DiffEreD
 Аватар для DiffEreD
1420 / 757 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
20.09.2012, 20:56     конструкторы #3
Цитата Сообщение от Татьяна С Посмотреть сообщение
И по какому синтаксису вызвать функцию, описанную в классе?
По обычному:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
class Foo
{
public:
    void show() const {cout<<"Hello\n";}
};
 
int main()
{
    Foo a;
    a.show();
    system("pause");
    return 0;
}
veverix
39 / 39 / 2
Регистрация: 14.09.2012
Сообщений: 85
20.09.2012, 21:10     конструкторы #4
Вот пример. Объекты создаются конструктором и используется функция вывода. Если класс создается динамически (c *cl = new c) то к функциям обращаться через ->
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
#include<iostream>
 
using namespace std;
 
class c
{
    int x;
public:
    c(){x = 0;}
    c(int _x){x = _x;}
    c(c &c2){x = c2.getX() + 1;}
    void out(){cout<<x<<endl;}
    int getX(){return x;}
};
 
int main()
{
    c cl1;
    c cl2(5);
    c cl3(cl2);
    cl1.out();
    cl2.out();
    cl3.out();
}
Yandex
Объявления
20.09.2012, 21:10     конструкторы
Ответ Создать тему
Опции темы

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