Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
FanAizu
0 / 0 / 0
Регистрация: 14.01.2011
Сообщений: 31
#1

3 мелких вопроса - C++

19.01.2011, 19:51. Просмотров 513. Ответов 3
Метки нет (Все метки)

1. Если в базовом классе объявлена переменная с каким-то именем, то в производных классах такого имени не должно встречаться?
2. Если в классе А объявлена секция protected, то производный класс Б имеет прямой доступ к этим данным, да? Ну а если производный класс Б сделать базовым по отношению к классу В, то класс В будет иметь прямой доступ к данным класса А из секции protected?
3. Почему ссылку нужно инициализировать при объявление? Ведь, если функцие передавать ссылку в качестве аргумента, то инициализации сразу не происходит. То есть в функцие инициализация ссылки происходит во время выполнения программы. Тогда почему в программе нельзя тоже объявить ссылку, а затем где-нибудь в другом месте ее инициализировать??
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.01.2011, 19:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос 3 мелких вопроса (C++):

два мелких вопроса на счет переменных - C++
у меня возник такой вопрос: скажем в функции main у меня есть переменная х, а с помощью return я освобождаю место,занятое х-ом. А что...

Реализация мелких функций в hpp - C++
Здравствуйте! Есть шаблон класса Vector с кучей мелких функций, типа сумма, разность, operator+, проч. Вопрос - стоит ли выносить их...

пара мелких ошибочек в программе, не могу понять в чем(( - C++
Пара мелких ошибочек в программе, не могу понять в чем(( #include <math.h> #include <stdio.h> #define N 200 /*формируем...

Правильно ли я делаю, что начинаю становления себя как программиста с решения мелких задач из интернета? - C++
Здравствуйте форумчане! Хочу задать вопрос, и узнать ваше мнение. Я начинающий программист на С++. Изучаю теорию по книге Стивена Прата...

2 вопроса - C++
Всем привет! У меня 2 глупых вопроса 1. Допустим, такой код int value() const { return m_nValue; } В чём смысл const?

Два вопроса - C++
1)Мне надо запустить программу, нажимаю run и вместо того чтобы выдать мне расчеты экран мигает и и ничего не происходит. Мне говорили,...

3
Jupiter
Каратель
Эксперт С++
6561 / 3982 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
19.01.2011, 20:51 #2
Цитата Сообщение от FanAizu Посмотреть сообщение
1. Если в базовом классе объявлена переменная с каким-то именем, то в производных классах такого имени не должно встречаться?
а открыть компилятор и самому проверить, руки отвалятся?
вот пример http://codepad.org/9SylX3jb

Цитата Сообщение от FanAizu Посмотреть сообщение
2. Если в классе А объявлена секция protected, то производный класс Б имеет прямой доступ к этим данным, да? Ну а если производный класс Б сделать базовым по отношению к классу В, то класс В будет иметь прямой доступ к данным класса А из секции protected?
да

Цитата Сообщение от FanAizu Посмотреть сообщение
3. Почему ссылку нужно инициализировать при объявление? Ведь, если функцие передавать ссылку в качестве аргумента, то инициализации сразу не происходит. То есть в функцие инициализация ссылки происходит во время выполнения программы. Тогда почему в программе нельзя тоже объявить ссылку, а затем где-нибудь в другом месте ее инициализировать??
почитайте о формальных и фактических параметрах
0
Nick Alte
Эксперт С++
1642 / 1014 / 119
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
19.01.2011, 20:56 #3
Цитата Сообщение от FanAizu Посмотреть сообщение
3. Почему ссылку нужно инициализировать при объявление? Ведь, если функцие передавать ссылку в качестве аргумента, то инициализации сразу не происходит. То есть в функцие инициализация ссылки происходит во время выполнения программы. Тогда почему в программе нельзя тоже объявить ссылку, а затем где-нибудь в другом месте ее инициализировать??
Создание ссылки, передающейся в функцию, происходит в момент вызова функции. Создание ссылки, объявленной как локальная переменная (как и для любой другой локальной переменной), происходит тогда, когда управление доходит до места, в котором она объявлена. Ссылка инициализируется в момент объявления потому, что её значение (то есть, адрес объекта, на который она указывает) не должно изменяться в течение всего времени существования ссылки. Так же, как и с переменными, объявленными как const - они тоже инициализируются в момент создания. Только const-переменную изменить всё-таки можно в принудительном порядке, а со ссылкой ещё строже, её вообще нельзя изменять.
1
FanAizu
0 / 0 / 0
Регистрация: 14.01.2011
Сообщений: 31
19.01.2011, 22:14  [ТС] #4
Цитата Сообщение от Maxwe11 Посмотреть сообщение
а открыть компилятор и самому проверить, руки отвалятся?
вот пример http://codepad.org/9SylX3jb
Я пишу на PHP. Решил выучить ООП. Посоветовали для начала изучить реализацию ООП в C++, так как в этом языке этот подход к написанию программ хорошенько реализован и после изучения ООП в C++ перейти на ООП в php будет легко. Ну а сам язык C/C++ заинтересовал и решил хотя бы знать его в теорие, т.к. возможно в будующем попробую писать программы не для веба. Опыт с C уже был на микроконтроллерах.
0
19.01.2011, 22:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.01.2011, 22:14
Привет! Вот еще темы с ответами:

3 Теоретических Вопроса - C++
1. Какие спецификации форматов ввода-вывода данных имеют функции scanf() и printf()? Каким образом организовывать ввод данных для поддержки...

Не понимаю вопроса - C++
Что сие означает? я имею ввиду часть "по убыванию элементов такого-то столбца"

Два вопроса - C++
1) Создать тип перечисления (перечень) MyType, который состоит из констант А=1,В=2,С=5 2)За декларируйте класc Student, которое будет...

знак вопроса - C++
что означает знак вопроса вот здесь: double gcd (int x, int y ) { return (( y == 0) ? x : gcd (y, x % y )); } программа...


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

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

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