|
23 / 20 / 3
Регистрация: 12.08.2010
Сообщений: 206
|
|
Отличия между структурами и классами18.08.2010, 12:38. Показов 28119. Ответов 58
Метки нет (Все метки)
Объясните пожалуйста, в С++, получается, что структура отличается от класса только тем, что у нее по умолчанию все данные public?
Т.е. наследовать структуры я тоже могу. Тогда как-то непонятен смысл создания двух одинаковых типов объектов, только что с разными названиями.
2
|
|
| 18.08.2010, 12:38 | |
|
Ответы с готовыми решениями:
58
Отличия между классами и массивами
Отличия между классами для работы с интернетом |
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|
| 28.07.2011, 20:54 | |
|
0
|
|
|
5 / 6 / 4
Регистрация: 18.11.2009
Сообщений: 661
|
|
| 29.07.2011, 01:10 | |
|
А примеры применений автореферентных классов какие? Скажем структуры с ссылкой для себя используют для создания списков в любом яз программирования. Это - азбука. А вот об автореферентных классах сведений гораздо меньше.
0
|
|
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
|
||||||||||||
| 29.07.2011, 01:21 | ||||||||||||
0
|
||||||||||||
|
|
||
| 29.07.2011, 09:45 | ||
|
Еще приведу такой пример. В MSVS 2010 (про другие незнаю) если написать например struct A и сознательно сделать в ней (структуре) ошибку, то в сообщении об ошибке будет информация следующего рода:
2
|
||
|
5 / 6 / 4
Регистрация: 18.11.2009
Сообщений: 661
|
|||||||||||
| 30.07.2011, 02:49 | |||||||||||
|
Ну хорошо. Конструктив лишь в том, что может быть класс, содержащий указатель на себя типа
По поводу списков говорили - там достаточно структуры. Может список объектов с частично скрытыми полями и открытыми интерфейсами? Примеры? Добавлено через 15 минут да кстати провел эксперимент с похожим кодом
Однако при вызовах по ссылкам как полагаю, должен вызываться конструктор класса, но счетчик экземпляров все время n=1 . Как это объяснить? Сколько на самом деле объектов?
0
|
|||||||||||
|
71 / 76 / 9
Регистрация: 30.06.2011
Сообщений: 176
|
||
| 30.07.2011, 06:31 | ||
|
0
|
||
|
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
|
|
| 30.07.2011, 07:24 | |
|
eugrita, хочешь примеров - почитай мою книжку:
http://www.ozon.ru/context/detail/id/3515464/
0
|
|
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|||
| 30.07.2011, 09:13 | |||
|
Добавлено через 1 минуту
0
|
|||
|
|
|
| 30.07.2011, 10:47 | |
|
Как по мне основное отличие классов от структур - это наличие функций и методов в классе.
Хотя структуру как классы имеют свои переменный функций и методов в них нет, они могут быть внешними но не принадлежать структуре. В этом плане структура являет собой урезанную в функциональных возможностях весию класса
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||
| 30.07.2011, 10:58 | ||||||
|
-=ЮрА=-, сюрприз:
1
|
||||||
|
5 / 6 / 4
Регистрация: 18.11.2009
Сообщений: 661
|
|
| 30.07.2011, 11:26 | |
|
Ну хорошо пусть так. А чего добился я этими вызовами? Обращения к 1 экз класса получаетcя?
Вопрос остается : в каких случаях прием использования ссылки внутри класса на самого себя эффективно работает? Его обл применения? Добавлено через 7 минут Ну хорошо. А чего я добился вызовом скажем k=s->a->a->n - обращение к тому же экземпляру переменной n? Такой синтаксис вроде возможен только в автореферентных классах
0
|
|
|
Каратель
|
||||
| 30.07.2011, 12:42 | ||||
|
Добавлено через 1 минуту
0
|
||||
|
5 / 6 / 4
Регистрация: 18.11.2009
Сообщений: 661
|
|
| 30.07.2011, 12:51 | |
|
под словами эффективно работает понимаю некую область задач или структур данных, создание которых происходит с помощью указанного приема - автореферентного класса.
А то мы, блин изучаем разные тонкости, возможности да еще в разных версиях С++ а к чему это все прилепить - в обсуждении ручки не доходят. Вроде как чистая математика- чистое искусство
0
|
|
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
||
| 30.07.2011, 13:01 | ||
|
Или ты не правильно понял выражение "ссылки внутри класса на самого себя"? Что непонятного в том, что объекты могут ссылаться друг на друга? Это же не ссылка объекта на себя, а ссылка на объект этого класса. Совершенно другой объект, расположенный по другому адресу. На тебе простой пример. Есть класс окна, в нём куча контролов. Контролы это тоже окна. Т.е. Класс окна и классы контролов совпадают (благодаря полиморфизму). Поэтому в классе окна хранятся указатели на контролы, а в контролах указатели на обрамляющее их окно. И никакой математики.
0
|
||
|
5 / 6 / 4
Регистрация: 18.11.2009
Сообщений: 661
|
||||||
| 30.07.2011, 16:12 | ||||||
|
нечто похожее есть в заданиях по программированию Бауманки:
29.Моделировать очередь (руками), в качестве элементов которой могут использоваться числа и слова. Операции: добавление элемента, удаление элемента, печать элементов. Создать класс - потомок, который содержит процедуру сортировки слов по алфавиту. .. 27.Описать объект, включающий заданные поля и методы. Написать программу, которая создает массив объектов и список объектов и содержит процедуры, работающие с указан-ными структурами. Объект - слово. Параметры: текст, длина, количество согласных букв. Методы: конструктор, определяющий поле текста и длину, и процедура, определяющая количество глас-ных букв. Определить процент гласных букв в предложении. Реализовать два варианта (с массивом и списком). для 29. При решении 29 создавалось несколько классов TElement,TNum,TSlovo - как его дочерние, и класс TQueue...: вроде класс TElement - автореферентный (только я такого слова тогда еще не знал)
0
|
||||||
|
5 / 6 / 4
Регистрация: 18.11.2009
Сообщений: 661
|
|
| 30.07.2011, 16:23 | |
|
да нет, конечно. Я их сам в свое время решил как халтура для студента. Но теперь только понял, что эта тематика задач похоже относится к обсуждаемой теме. А вы несогласны?
0
|
|
|
Каратель
|
|
| 30.07.2011, 16:25 | |
|
0
|
|
| 30.07.2011, 16:25 | |
|
Разница между классами и структурами и другие моменты Отличия между ++value и value++ Отличия между видеокартами Отличия между книгами Отличия между DVD Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Нейтральные знания ..., ... чистая наука. Пока что-то проходит модерацию на Хабре, стоит развить мысль ...
Hrethgir 20.07.2026
К таким радикальным взглядам я конечно в той публикации не приходил, но чтобы скоротать вечер, решил углубиться немного.
1. Почему показания термометра заряжены целью?
Цель заложена в самом. . .
|
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
|
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
|
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения.
https:/ / habr. com/ ru/ sandbox/ 295048/
По ссылке 403. Не очень информативно такую ссылку постить.
Запись от Usaga размещена Сегодня в 06:46 . . .
|
|
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
|
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано
Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
|
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано
Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
|
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0)
Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона
Уважаемые коллеги!
В продолжение. . .
|