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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 87, средняя оценка - 4.85
The_bolT
70 / 70 / 1
Регистрация: 22.01.2013
Сообщений: 231
#1

Разница между объектом и экземпляром класса - C++

02.03.2013, 21:34. Просмотров 14628. Ответов 142
Метки нет (Все метки)

Можете объяснить какая между этими понятиями разница?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2013, 21:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Разница между объектом и экземпляром класса (C++):

Какая разница между eof и просто объектом? - C++
То есть предположим открыли файл и объект input подставили в условие while и внутри считываем строки с файла с помощью getline. Так вот...

В чем разница между классом и шаблоном класса? - C++
Помогите ответить. В чем разница между классом и шаблоном класса?

Ошибка при работе с объектом класса в конструкторе другого класса - C++
Имеется данный код: https://github.com/ubelian/glgame/tree/master/glgame В файле Food.cpp в конструкторе класса Food::Food() на 19...

Создание объекта класса с полем являющимся объектом другого класса - C++
Bill a; cin>>a;//тут я ввел с помощью перегруженного оператора ElementSpiska c; //поля у Spiska(Bill A,int,string,int) ...

Вызов объектом базового класса функцию из производного класса! - C++
Как можно осуществить вызов или передачу значения в базовый класс для дальнейшего вычисления этого значения в производном классе. Вот...

Почему при компилировании программы со вторым экземпляром класса изменяются значения первого? - C++
Здравствуйте. Вопрос: почему при компилировании программы со вторым экземпляром класса изменяются значения первого? namespace SALES { ...

142
AncientPenguin
98 / 45 / 18
Регистрация: 09.08.2015
Сообщений: 367
01.09.2015, 14:32 #76
Цитата Сообщение от Mr.X Посмотреть сообщение
Оба слова многозначны
А пример можно? Пожалуйста.

Цитата Сообщение от Mr.X Посмотреть сообщение
Речь же идет о профессиональной терминологии, которая четко зафиксирована для каждого языка программирования его создателями.
Нет речь идет об тексте на английском языке именуемым стандарт С++, он не на самом С++ написан... В С++ есть два разных оператора object и instance? Если да то я и в правду не по делу влез.

Цитата Сообщение от Mr.X Посмотреть сообщение
Невежды могут ссылаться на что угодно
Например, на личные характеристики собеседника ничего о нем толком не зная?
0
Mr.X
Эксперт С++
3051 / 1696 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
01.09.2015, 14:59 #77
Цитата Сообщение от AncientPenguin Посмотреть сообщение
Нет речь идет об тексте на английском языке именуемым стандарт С++
Создатель языка С++ - Страутруп. Он и терминологию для него создал и изложил в своих книгах. А студентам надо их внимательно читать и на ус мотать, чтобы не попадать потом в неловкое положение.
К примеру, он объясняет почему не воспользовался терминами субкласс и суперкласс из Симулы, а ввел свои - базовый и производный классы. Ну, бывает некоторые и в С++ вдруг внезапно обнаруживают суперклассы, потому что их
Цитата Сообщение от AncientPenguin Посмотреть сообщение
личные характеристики
- это
Цитата Сообщение от Mr.X Посмотреть сообщение
невежество и бескультурье.
0
Cdelphi78
129 / 63 / 12
Регистрация: 21.02.2014
Сообщений: 2,524
01.09.2015, 15:05 #78
Цитата Сообщение от Mr.X Посмотреть сообщение
Применять термины одного языка к другому
Но ведь в классе ООП существует много ЯП...
Вообще да, я искал в чем разница между экземпляром и обьектом в ООП в общем смысле, а тут ничего не нашлось кроме темы открытой в разделе С++
0
AncientPenguin
98 / 45 / 18
Регистрация: 09.08.2015
Сообщений: 367
01.09.2015, 15:53 #79
Цитата Сообщение от Mr.X Посмотреть сообщение
Создатель языка С++ - Страутруп. Он и терминологию для него создал и изложил в своих книгах.
На английском языке, не на ЯП.

Цитата Сообщение от Mr.X Посмотреть сообщение
А студентам надо их внимательно читать и на ус мотать, чтобы не попадать потом в неловкое положение.
А мне вы это зачем написали? Я не студент, а вы не экстрасенс.

Я же попросил привести пример когда слова объект и экземпляр не равнозначны, хорошо попросил. Видимо аргументов в поддержку своего мнения у вас нет или я недостоин их услышать?
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
01.09.2015, 16:10 #80
AncientPenguin, объект может не быть экземпляром класса
0
AncientPenguin
98 / 45 / 18
Регистрация: 09.08.2015
Сообщений: 367
01.09.2015, 16:17 #81
Croessmah, нет уж либо добавьте слово класс и к объекту:

Цитата Сообщение от Croessmah Посмотреть сообщение
объект класса может не быть экземпляром класса
Либо уберите вообще:

Цитата Сообщение от Croessmah Посмотреть сообщение
объект может не быть экземпляром
Уже не так логично смотрится, правда?
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
01.09.2015, 16:23 #82
AncientPenguin, название темы
Разница между объектом и экземпляром класса
С чего бы здесь что-то добавлять.
0
AncientPenguin
98 / 45 / 18
Регистрация: 09.08.2015
Сообщений: 367
01.09.2015, 16:33 #83
Croessmah, а мне зачем пишите? Я просил разницу между словами экземпляр и объект.
В любом случае там имеется в виду между объектом класса и экземпляром класса.
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
01.09.2015, 17:56 #84
AncientPenguin, ну ок. Вот: http://stackoverflow.com/questions/2...and-instance-c
In C++ "object" and "instance" are used nearly interchangably
...
C++
1
2
int x = 0;
int& foo = x;
foo is an instance of the type int&, but calling foo an object is probably wrong! It is a reference -- an alias, or a different name for some object (in this case x).
...
This is a useful distinction: a type does not have to denote an object type if it is a reference type. Object types behave differently than reference types in a number of important ways.
и из стандарта:
3.9
8. An object type is a (possibly cv-qualified) type that is not a function type, not a reference type, and not a
void type
Добавлено через 15 минут
ну и отсебятины:
C++
1
2
3
4
5
6
7
int func () //является ли экземпляром перегруженной функции func?
{
}
 
int func ( int )//является ли экземпляром перегруженной функции func?
{
}
0
AncientPenguin
98 / 45 / 18
Регистрация: 09.08.2015
Сообщений: 367
01.09.2015, 19:39 #85
Цитата Сообщение от Croessmah Посмотреть сообщение
и из стандарта:
Вот это уже убедительнее. Ладно я был не прав, тут решает не тот факт что это синонимы, тут решает тот факт что в название темы есть слово класс. Экземпляр класса == объекту класса в С++.

Цитата Сообщение от Croessmah Посмотреть сообщение
AncientPenguin, объект может не быть экземпляром класса
Судя по вашей цитате - не может.
0
hoggy
6692 / 2874 / 494
Регистрация: 15.11.2014
Сообщений: 6,466
Завершенные тесты: 1
01.09.2015, 19:41 #86
Цитата Сообщение от The_bolT Посмотреть сообщение
Можете объяснить какая между этими понятиями разница?
объект - это кусок памяти.
объект детонирует (обозначает) имя.
имя задается в виде текстовой метки.
имя обладает областью видимости,
типом, и квалификатором.

тип определяет содержимое этого куска памяти.
(ц) Страуструп, по памяти.
здесь нужно сделать оговорку:
объекты случаются безымянные
(например, временный объект, либо экземпляр безымянного класса/структуры).

кроме того, в стандарте есть примечание:
объектами не являются функции.
хз почему, но ими можно панимулировать практически так же,
как и обычными объектами.


таким образом формально, объект -
это тупо любой доступный для нас кусок памяти.


а вот когда говорят "экземпляр", то имеют ввиду объект именно класса.
а не какой нибудь массив чаров.

экзепляры бывают у классов:
"экземпляр класса"
0
Cdelphi78
129 / 63 / 12
Регистрация: 21.02.2014
Сообщений: 2,524
01.09.2015, 20:02 #87
Цитата Сообщение от AncientPenguin Посмотреть сообщение
Вот это уже убедительнее.
Да а в других яыках как или вообще в ООП вообщем?
0
hoggy
6692 / 2874 / 494
Регистрация: 15.11.2014
Сообщений: 6,466
Завершенные тесты: 1
01.09.2015, 21:00 #88
Цитата Сообщение от AncientPenguin Посмотреть сообщение
Судя по вашей цитате - не может.
напротив.

экземпляр - всегда объект.
но объект - не всегда экземпляр.

Добавлено через 2 минуты
Цитата Сообщение от Cdelphi78 Посмотреть сообщение
Да а в других яыках как или вообще в ООП вообщем?
в каноничном ООП все есть объект.

то, что в с++ называется "вызовом функции члена",
в каноничном ооп называется "посылкой сообщения".
при этом само сообщение - тоже объект.


если в с++ объект - это тупо кусок памяти,
то в каноничном ооп, объект - это экземпляр класса,
сущность наделенная свойствами, и умениями.

тобишь там это понятие более "выскоуровневое"
0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
01.09.2015, 21:01 #89
Цитата Сообщение от Cdelphi78 Посмотреть сообщение
вообще в ООП
Вот тут очень хорошо написано: https://en.wikipedia.org/wiki/Instance_%28computer_science%29
0
AncientPenguin
98 / 45 / 18
Регистрация: 09.08.2015
Сообщений: 367
01.09.2015, 22:02 #90
Цитата Сообщение от hoggy Посмотреть сообщение
экземпляр - всегда объект.
но объект - не всегда экземпляр.


Цитата Сообщение от Croessmah Посмотреть сообщение
8. An object type is a (possibly cv-qualified) type that is not a function type, not a reference type, and not a void type
А что такое тогда функция и ссылка? Еще одно отдельное понятие? Тут написано что функция и ссылка не объекты, следовательно и не экземпляры...
0
01.09.2015, 22:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.09.2015, 22:02
Привет! Вот еще темы с ответами:

Возврат значения объектом класса - C++
Может ли экземпляр класса возвращать значение своего поля без обращения к полю напрямую например class MyClass { int val = 5;...

Действие над объектом класса выполняет: - C++
Кому не сложно, помогите с тестом :)

Задача на строки, с объектом класса string - C++
Дано осмысленное текстовое сообщение, разделенное пробелами и знаками препинания, в конце ставится точка. Поменять слова в сообщении по...

Конструктор с параметром-объектом того же класса - C++
Была поставлена задача: определить конструктор с параметром-объектом того же класса, но я совсем не понимаю, что от меня требуется?...


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

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

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