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

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

Войти
Регистрация
Восстановить пароль
 
GrukhvinEV
23 / 23 / 0
Регистрация: 08.11.2011
Сообщений: 284
#1

Что означает запись ? - C++

01.11.2012, 17:17. Просмотров 922. Ответов 4
Метки нет (Все метки)

Что означает(подразумевает) запись:
C++
1
2
3
class Datb:public Data{
public:Datb(int m, int x):Data(m){
}
Полный код программы:
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
#include <stdio.h>
#include <stdlib.h>
#include <iostream.h>
class Data{
protected: int m, n;
public: Data(int m, int n){
this->m = m;
this->n = n; }
void print(){
if (n>m) cout << n;
else cout << m;
cout << '' ''; }
};
class Datb:public Data{
public:Datb(int m, int x):Data(m){
}
void print(){
if (n<m) cout << n;
else cout << m;
cout << endl; }
};
void main(){
int n,m,k;
scanf(''%d%d'',&n,&m);
Data *x, *y;
x = new Data(n,m);
y = new Datb(n,m);
x -> print();
y -> print();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.11.2012, 17:17     Что означает запись ?
Посмотрите здесь:

Что означает запись? - C++
for (; j &lt; k; j++) - Что означает эта строчка? Интересует именно символ &quot;;&quot; сразу после скобки

Что означает запись - C++
Привет. Верна ли, и если да, то что значит данная запись и для чего она используется: bool found = false; found = winner(board) ==...

Что означает запись int **a - C++
int * a-указатель на целочисленное.А это что- int **a ?

Что означает запись 1.8e307? - C++
Всем добрый день! Подскажите пожалуйста, как можно назвать на c++ это число? 1.8e307 Это типо максимально возможное?

Объяснить что означает запись if (i % 10 == 0) - C++
Объясните, пожалуйста, что означает эта запись простыми словами

что означает такая запись c*=a%10 - C++
Здравствуйте, у меня вот такой вопрос, что означает такая запись c*=a%10

Что означает запись int (*a)[10]? - C++
int (*a); Что создаёт компилятор если я забиваю это?

Что означает эта запись? - C++
Что означает эта запись? и можно ли ее как нибудь заменить или запихнуть в подключаемую библиотеку? C++ Visual Stdio 2010 typedef...

Что означает данная запись - C++
Добрый день Имеется простой класс Class Test { public: unsigned a : 1; unsigned b : 1; };

Нюансы синтаксиса: что означает запись for ( ; ; ) ? - C++
Встретила в программе такую строку: for ( ; ; ) { // some code } Кто может объяснить по какому принципу она работает,...

Нюансы синтаксиса: что означает запись (1<<20) ? - C++
Добрый день! Подскажите, пожалуйста. Нашел программу, в ней есть такая строка: #define DICT_SIZE (1 &lt;&lt; 20) Что...

Подскажите, что означает следующая запись - C++
WAVHEADER *head = (WAVHEADER*)buff; , где WAVHEADER - структура. BYTE *buff = NULL; - нулевой указатель. DWORD size =...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kertio
26 / 26 / 1
Регистрация: 20.09.2011
Сообщений: 68
01.11.2012, 17:23     Что означает запись ? #2
класс Datb потомок класса Data. Базовую часть класса конструирует через конструктор базового класса с параметром m. Как-то так.
Peperovich
43 / 43 / 4
Регистрация: 17.05.2011
Сообщений: 162
01.11.2012, 17:25     Что означает запись ? #3
Означаент что класс Datb наследуется от класса Data - это первая строчка, а вторая это конструктор класса Datb + вызов конструктора Data с передачей параметра m.
GrukhvinEV
23 / 23 / 0
Регистрация: 08.11.2011
Сообщений: 284
01.11.2012, 17:36  [ТС]     Что означает запись ? #4
Слабо понятно )) А если параметр n=3 а m=5 что будет после выполнения ?
И как можно передать конструктору Data один только параметр m ? а ворой параметр гду будет ?
kertio
26 / 26 / 1
Регистрация: 20.09.2011
Сообщений: 68
01.11.2012, 18:35     Что означает запись ? #5
Цитата Сообщение от GrukhvinEV Посмотреть сообщение
Слабо понятно )) А если параметр n=3 а m=5 что будет после выполнения ?
И как можно передать конструктору Data один только параметр m ? а ворой параметр гду будет ?
1. m так и будет равен 5. а параметр n будет уже в порожденном классе использоваться. для потомка нужно два параметра(m и n), а базовому только m. вот они и инициализируются так.
2. там и так конструктору Data передается один параметр.

Добавлено через 4 минуты
так, туплю... у тебя будет ошибка компиляции. нет конструктора Data(int). Есть только Data (int, int). ну тогда и передавай оба параметра базовому конструктору.
C++
1
Datb(m, n) : Data(m,n){}
Добавлено через 2 минуты
ну а если хочешь чтобы была возможность передавать только один параметр, при объявленном конструкторе с двумя параметрами, тогда сделай один параметр параметром по умолчанию.
C++
1
2
3
...
public:
   Data(int m, int n = 5) { ... }
Yandex
Объявления
01.11.2012, 18:35     Что означает запись ?
Ответ Создать тему
Опции темы

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