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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.85
Chup
Сообщений: n/a
#1

Конструктор класса - C++

12.03.2011, 00:34. Просмотров 1726. Ответов 3
Метки нет (Все метки)

Имеется:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class block{
public:
block(int, int);
private:
int CoordX;
int CoordY;
};
block::block(int X, int Y){
CoordX = X;
CoordY = Y;
}
 
class cube{
public:
cube();
private:
class block TopLeft(2, 3);  //строка вызывающая ошибку
};
На сколько понимаю, всё вполне правильно: объявляем класс cube, элементом которого будет объект класса block. Но как только пытаюсь всё это дело скомпилировать, выдаёт ошибку:
error C2059: синтаксическая ошибка: константа.
Компилятор Microsoft Visual Studio 2008.
Никак не могу понять в чём дело, прошу вашей помощи. Заранее спасибо
P.S. Пытался использовать оператор глобального разрешения, при определении конструктора класса block, но всёравно не работает
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.03.2011, 00:34     Конструктор класса
Посмотрите здесь:

Конструктор класса с инициализацией другого класса - C++
error C2064: term does not evaluate to a function taking 6 arguments Так же при наведении на SStria(...); Пишет: call of an object of...

Конструктор класса - C++
class NMClient{ public: NMClient(string IPServer, int Port); NMClient(string IPServer, int Port) { /*_Running =...

Конструктор класса - C++
Здравствуйте,не могу понять ,для чего нужен конструктор класса.Когда его нужно задавать

Конструктор класса - C++
Для чего используется второй конструктор, если при объявлении полей класса и так указывается их тип? class fraction { ...

Конструктор класса - C++
Я не могу понять вот эту запись class A{}; class B : public A {

Конструктор класса - C++
Интересно, а может ли быть конструктор класса не публичнымм, а приватным?

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
12.03.2011, 00:39     Конструктор класса #2
C++
1
2
3
4
5
6
[quote=Chup;1441815]class cube{
public:
cube() : TopLeft(2,3) {}
private:
 block TopLeft; 
};
Chup
Сообщений: n/a
12.03.2011, 00:53     Конструктор класса #3
Цитата Сообщение от alex_x_x Посмотреть сообщение
C++
1
2
3
4
5
6
class cube{
public:
cube() : TopLeft(2,3) {}
private:
 block TopLeft; 
};
Спасибо, работает. Но мне не понятно, что мы делаем таким образом? И если необходимо объявить несколько элементов класса block в классе cube, необходимо писать такую конструкцию в секции public для каждого?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.03.2011, 00:59     Конструктор класса
Еще ссылки по теме:

Конструктор класса - C++
Пишу конструкцию #include <iostream.h> #include <conio.h> class MyClass { int a; public: void...

Конструктор класса - C++
Необходимо, чтобы при задании планеты (сферы) высчитывался гравитационный параметр, желательно в конструкторе. Данный код не компилируется,...

Конструктор класса - C++
class A{}; class B : public A { B(); }; B::B() : A() /// ДЛЯ ЧЕГО ТУТ :A() И ЧТО ЭТО ОЗНАЧАЕТ??? { }

Конструктор класса - C++
задание: Класс кольцо. В классе определить поля с координатами центра кольца, большим и малыми радиусами, автовычисляемые поля с площадью и...

Конструктор класса - C++
Добрый вечер. Поясните кто может) Есть класс class Person { public: Person(void); ~Person(void); char Name; char...

Конструктор класса - C++
Необходимо для данного класса class sequence { public: typedef double value_type; typedef std::size_t size_type; static...


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

Или воспользуйтесь поиском по форуму:
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
12.03.2011, 00:59     Конструктор класса #4
Chup, если мы объявляем членом класса объект, то его конструктор нужно вызывать в конструкторе класса
Yandex
Объявления
12.03.2011, 00:59     Конструктор класса
Ответ Создать тему
Опции темы

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