![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
да никто не возбуждается...просто когда некто, после наездов и грубостей за красивые глаза и знание цитат из ширли-мырли хочет получить консультацию, приходится объяснять ему где его место...обычно это делает модератор, но ты ограничилась только просьбой держать себя в руках...
Добавлено через 2 минуты и 20 секунд я ща живот надорву... господин всезнайка, не просвятите, что такое явный полиморфизм... м.б. это тоже из ширли-мырли? -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
sisbkoshup |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 13.2.2007 Репутация: -6 Всего: нет |
В С++ полиморфизм работает(корректно) только для указателей на объект! Тогда когда объект помещается в динамическую память ручками!!! Учись недоучка! Почитайте то что найдете по ссылке и выскажите свое мнение!!! Это сообщение отредактировал(а) sisbkoshup - 4.4.2007, 17:30 |
|||
|
||||
Sartorius |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1568 Регистрация: 18.7.2006 Где: Ivory tower Репутация: 8 Всего: 37 |
(Из ссылки sisbkoshup.) Автор статьи скоррее всего просто неточно формулирует свои мысли. (Там еще много мест, допускающих неоднозначное толкование) А то можно подумть , что все объекты на стеке размещаются. ЗЫ sisbkoshup, читай оригинальные работы Страуструпа и мануалы, а то такие преподы научат ![]() Это сообщение отредактировал(а) Sartorius - 4.4.2007, 17:31 |
|||
|
||||
sisbkoshup |
|
||||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 13.2.2007 Репутация: -6 Всего: нет |
Где ты считаешь они хранятся?
Конечно, доктор математических наук, который написал компилятор, по сравнению с Вами пацан! ![]() Это сообщение отредактировал(а) sisbkoshup - 4.4.2007, 17:36 |
||||
|
|||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
угу и про dynamic_cast<T&>(obj) всезнайка случайно забыл...
другими словами работает ещё для ссылок (чем и являются твои "объекты" в java, objpascal) а не подскажешь в каких языках полиморфизм работает для самих объектов? может быть великий фильм ширли-мырли ещё и объяснил тебе КАК полиморфизм может работать для объектов? -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Зависит от класса, естественно. Чаще всего в куче. Возьми, скажем string. Там внутри указатель на динамическую строку. При объявлении string автоматической переменной сами поля string, конечно, будут в стеке, а динамическая память останется динамической. А ведь это тоже данные string (которые нужно учитывать при конструировании копий). За вами успеешь, как же... sisbkoshup, полиморфизм в C++ есть, и даже два раза (времени выполнения и времени компиляции). И что значит "явный", интересно? Какую-нибудь конструкцию хочешь типа: explicit polymorhic class XXXYYY {} ? Кстати, для будущего математика ты как-то невнятно выражаешь свои мысли. Надо с этим бороться. И еще: если уж тебе так не нравится C++, насильно-то мил не будешь, чего упираться? Есть Жава и многие прочие - есть выбор... Это практически вопрос религии... Наезжая на С++, да еще так беспредметно, ты здесь понимания не найдешь... -------------------- ... |
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
Sartorius |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1568 Регистрация: 18.7.2006 Где: Ivory tower Репутация: 8 Всего: 37 |
sisbkoshup, Earnest уже ответила на этот вопрос. Я повторю : все зависит от конкретного случая. Используя различные модификаторы класса памяти мы можем поместить объект на стек, в кучу или сегмент данных. Хотя она сказала, что на стеке хранятся только POD - ничего сказать не могу - не проверял. ИМХО и поля объектов там тоже размещаются
|
|||
|
||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Оставьте в покое Ширли-Мырли - фильм ни в чем не виноват!
![]() Тебе уже сказали - где угодно. Добавлено через 3 минуты и 6 секунд
Но ведь он чушь написал. Или это относится к написанному им компилятору. Только не к С++. ![]() ![]() ![]() -------------------- ... |
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
подведу итог: объект (даже не POD) хранится на стеке (если имеет автоматическое время жизни), а вот где хранятся объекты, которыми он "владеет" - это уже как удобнее разработчику будет (по тем же правилам: автоматические - на стеке, динамические - в куче и т. д.)... а конструктор копии для того и создан, чтобы такие вот моменты учитывать (ну или если поля содержат ссылки\указатели на другие поля того же объекта ![]() -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Поля - да. Но поля != данные. Т.е. это еще не все данные. Динамически выделенная в классе память - разве не данные класса? -------------------- ... |
|||
|
||||
sisbkoshup |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 13.2.2007 Репутация: -6 Всего: нет |
Если мне кто-то раскажет как в Delphi или Java положить объект(именно поля объекта) на стек! Я соглашусь с тем что я незнаю программирования вообще, и уйду с этого форума!
_____________________________ ![]() ![]() ![]() |
|||
|
||||
nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 3 Всего: 43 |
Даже второкурсник(учащийся на программиста) это сможет сделать. |
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
sisbkoshup, ты наверное не слышал про такую конструкцию в objpascal'е, как object... так что программированию тебе ещё учиться и учиться...
![]() -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
sisbkoshup |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 13.2.2007 Репутация: -6 Всего: нет |
Выложите работающий код!!!
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |