Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.192] |
|
|
Правила раздела:
| Страницы: (495) « Первая ... 458 459 [460] 461 462 ... 494 495 ( Перейти к последнему сообщению ) |
Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
|
Сообщ.
#6886
,
|
|
|
|
|
Сообщ.
#6887
,
|
|
|
|
Цитата --Ins-- @ Компилятор такой провидец, что знает где мне нужно объект передать по ссылке, а где по значению? Я ведь могу и в объявлении метода не поставить по привычке --Ins--, а что такое идентификатор и что за ним скрывается? А что происходит когда мы один объект присваиваем другому(не важно где в Java или в С++)? |
|
Сообщ.
#6888
,
|
|
|
|
А щито там в объявлении метода? |
|
Сообщ.
#6889
,
|
|
|
|
Ыыыы.... Причем тут додумались то? У них это не получилось бы. Это нужно было специально изменять логику. У тебя объект содержит ведь ссылку, а не данные. Ты что тупишь то? |
|
Сообщ.
#6890
,
|
|
|
|
Чо? А int - это и не объект. Да, я в курсе, что в Java/C# объекты - это все, но даже там их все же выделили в отдельные value-type и ведут они себя как им и положено. А вот настоящий объект там по значению не передашь. А в с++ - пфф, легко. Я так понимаю даже копию синглтона можно при желании в метод послать, так? Добавлено Цитата MyNameIsIgor @ Неа, не провидец - он просто не умеет копировать некопируемое. А, вспомнил, там есть какой-то конструктор копирования... В общем, без бутылки, как грицца... |
|
Сообщ.
#6891
,
|
|
|
|
Цитата --Ins-- @ А int - это и не объект. Поздравляю, вы смогли отличить тип от объекта. Цитата --Ins-- @ Я так понимаю даже копию синглтона можно при желании в метод послать, так? Нет, не так. |
|
Сообщ.
#6892
,
|
|
|
|
Цитата --Ins-- @ Чо? Что за джавовским идентификатором скрывается? Данные! Какие данные? Число! Что за число? Адрес по которому хранятся данные пользовательские. У тебя объект, это своего рода враппер над данными, и у тебя он содержит указатель на эти даные. Т.е. хранишь ты память отдельно под данные, и еще отдельно под этот адрес. А в С++, объект - это враппер на данными, который указывает на эти данные. И никаких ссылок там больше нет. Вот скажи мне, сколько будет весить в java объект класса с одной переменной типа int ? В C++ будет 4 байта. А в Java ? Я тебе второй раз задаю этот вопрос... |
|
Сообщ.
#6893
,
|
|
|
|
Цитата MyNameIsIgor @ Поздравляю, вы смогли отличить тип от объекта. Когда же уже я восторжествую, что мой собеседник тоже сумел отличить класс от пользовательского типа? |
|
Сообщ.
#6894
,
|
|
|
|
Цитата --Ins-- @ А, вспомнил, там есть какой-то конструктор копирования... Ага есть. И нет никакой передачи по значению из-за забытой звёздочки. А у вас нет аргументов. Ну, кроме Цитата --Ins-- @ без бутылки что опять заставило вспомнить о Шарикове. |
|
Сообщ.
#6895
,
|
|
|
|
Цитата --Ins-- @ а, я в курсе, что в Java/C# объекты - это все, но даже там их все же выделили в отдельные value-type и ведут они себя как им и положено. А вот настоящий объект там по значению не передашь. А в с++ - пфф, легко. Я так понимаю даже копию синглтона можно при желании в метод послать, так? Ок. Почему в java настоязий объект по значению нельзя предать? Я уверен ты не знаешь этого, если бы знал, ты не задавал бы таких глупых вопросов. Цитата --Ins-- @ А в с++ - пфф, легко. Я так понимаю даже копию синглтона можно при желании в метод послать, так? А что такое синглтон и как он реализуется почитай. Желательно несколько раз. Думаю сам и ответишь на свой вопрос. |
|
Сообщ.
#6896
,
|
|
|
|
Цитата --Ins-- @ Когда же уже я восторжествую, что мой собеседник тоже сумел отличить класс от пользовательского типа? Пользовательский тип не может быть классом? Или класс - не тип? Или пользовательский тип - не тип? Давайте, выкладывайте следующую порцию ваших домыслов. |
|
Сообщ.
#6897
,
|
|
|
|
Цитата KILLER @ Что за джавовским идентификатором скрывается? Данные! Какие данные? Число! Что за число? Адрес по которому хранятся данные пользовательские. У тебя объект, это своего рода враппер над данными, и у тебя он содержит указатель на эти даные. Т.е. хранишь ты память отдельно под данные, и еще отдельно под этот адрес. А в С++, объект - это враппер на данными, который указывает на эти данные. И никаких ссылок там больше нет. Да блин, в третий раз - я в курсе, спасибо КЭП Цитата KILLER @ Вот скажи мне, сколько будет весить в java объект класса с одной переменной типа int ? В C++ будет 4 байта. А в Java ? Я тебе второй раз задаю этот вопрос... Переменная этого типа будет весить столько, сколько весит ссылка, независимо от размера экземпляра. 4 байта на 32-разрядных системах, надо полагать. Сам экземпляр - сумма размеров его данных + необходимая для класса информация. Я не знаю что там в Java, в Delphi каждый экземпляр содержит помимо полей ссылку на свой VMT, подозреваю в Java тоже. Значит экземпляр будет весить как минимум 8 байт Добавлено Цитата MyNameIsIgor @ Пользовательский тип не может быть классом? Или класс - не тип? Или пользовательский тип - не тип? Давайте, выкладывайте следующую порцию ваших домыслов Пользовательский тип может быть классом. Но внезапно - не обязан им быть |
|
Сообщ.
#6898
,
|
|
|
|
Цитата --Ins-- @ Пользовательский тип может быть классом. Но внезапно - не обязан им быть Бесспорно. Так вывод то какой? |
|
Сообщ.
#6899
,
|
|
|
|
Цитата KILLER @ Почему в java настоязий объект по значению нельзя предать? В Delphi - тоже. Потому что это - глупость - копировать ссылки внутри объекта. Добавлено Цитата MyNameIsIgor @ Так вывод то какой? Нахера для объектов и не объектов использовать классы? |
|
Сообщ.
#6900
,
|
|
|
|
--Ins--,
1. Так что там по вашему надо указывать в объявлении метода, что вы можете по привычке забыть? 2. Вы уже прочитали, что термин "объект" имеет к ООП опосредованное отношение? |