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

Пример из учебника. Не могу разобраться. - C++

Восстановить пароль Регистрация
 
fermerius
0 / 0 / 0
Регистрация: 24.10.2010
Сообщений: 19
14.02.2011, 01:54     Пример из учебника. Не могу разобраться. #1
Читаю книжку, не могу понять одно упражнение оттуда. Кого не затруднит, разъясните пожалуйста. Самое начало ООП, глава посвящена классам и объектам.
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
31
32
class account
{
int balance,accno;
public:
account(){balance=0;}
account(account &s)
{
balance = ++s.balance;
accno=0;
}
void assign( int u)
{
balance = 110; accno = u;
}
void disp()
{
cout<<”Balance”<<balance<<endl;
cout<<” Acc no.”<<accno<<endl;
}
};
void main()
{
account a1;
a1.assign(9);
a1.disp();
account a2(a1);
a2.disp();
account a3(a2);
int y=10;
a3.assign(-y);
a3.disp();
}

Собственно, 2 вопроса по коду:
1. непонятна вот эти строки
C++
1
account(account &s)
C++
1
balance = ++s.balance;
Зачем стоит оператор адреса перед переменной s ? Что такое s.balance ?

2.
C++
1
account a2(a1);
как понимать такую форму записи ? а2 это объект класса account ? Или это параметры функции account. С одноименными классами и ф-циями запутался совсем.

Спасибо большое заранее.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2011, 01:54     Пример из учебника. Не могу разобраться.
Посмотрите здесь:

C++ не могу разобраться
C++ Не могу разобраться в С++
Простой пример, немогу разобраться C++
C++ Пример с учебника Дэвиса. Необьявленный идендификатор
C++ Не могу выполнить пример из книги
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
14.02.2011, 02:00     Пример из учебника. Не могу разобраться. #2
Не обижайтесь, но я бы вас отправил на несколько тем назад - прочитать про ссылки, а затем ещё раз перечитать тему про классы и понять, что такое конструктор, как создавать объект класса и инициализировать его. А потом и про копирующий конструктор перечитайте.

Добавлено через 35 секунд
А, да, ещё про операцию прямого доступа "точка".
fermerius
0 / 0 / 0
Регистрация: 24.10.2010
Сообщений: 19
14.02.2011, 02:14  [ТС]     Пример из учебника. Не могу разобраться. #3
Не обижаюсь. Сейчас начал след. главу, где рассказано про конструктор. Прошу прощения, не ожидал, что там могут быть упражнения по не пройденному материалу. Почти со всем разобрался.

А, да, ещё про операцию прямого доступа "точка".
Это касательно этой строки
C++
1
balance = ++s.balance;
? Спасибо, с этим как раз еще не разобрался. Не знаете, случаем, как это на английском называется ?
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
14.02.2011, 09:52     Пример из учебника. Не могу разобраться. #4
Цитата Сообщение от fermerius Посмотреть сообщение
Не знаете, случаем, как это на английском называется ?
Нет...
Странная книга... Обычно про ссылки задолго до классов рассказывают, тем более не применяют их в примерах, ещё не описав. Ну и операция "точка" тоже заранее описывается. Или сразу после того примера, где она использовалась. Может, автор предполагает, что вы знаете Си, и к подобным вопросам не возвращается (в Си это операция доступа к полю структуры).
Yandex
Объявления
14.02.2011, 09:52     Пример из учебника. Не могу разобраться.
Ответ Создать тему
Опции темы

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