Левша
Левша

Что же такое класс в Си++?

1 318
25
2
Ответы
je
jeka1983_83

Класс — разновидность абстрактного типа данных в объектно-ориентированном программировании (ООП), характеризуемый способом своего построения. Другие абстрактные типы данных — метаклассы, интерфейсы, структуры, перечисления, — характеризуются какими-то своими, другими особенностями. Наряду с понятием «объекта» класс является ключевым понятием в ООП (хотя существуют и бесклассовые объектно-ориентированные языки, например, Self, Lua; подробнее смотрите Прототипное программирование). Суть отличия классов от других абстрактных типов данных состоит в том, что при задании типа данных класс определяет одновременно как интерфейс, так и реализацию для всех своих экземпляров, а вызов метода-конструктора обязателен. Точный смысл этой фразы будет раскрыт ниже.

На практике объектно-ориентированное программирование сводится к созданию некоторого количества классов, включая интерфейс и реализацию, и последующему их использованию. Графическое представление некоторого количества классов и связей между ними называется диаграммой классов. Объектно-ориентированный подход за время своего развития накопил множество рекомендаций (паттернов) по созданию классов и иерархий классов.

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

Везде далее слова «класс», «объект», «интерфейс» и «структура» будут употребляться в своих специальных значениях, заданных в рамках ООП.

6
0
Левша
Левша

мне больше с точки зрения генерируемого кода охота понять что это, из каких команд состоит

1
je
jeka1983_83

// объявление классов в С++
class /*имя класса*/
{
private:
/* список свойств и методов для использования внутри класса */
public:
/* список методов доступных другим функциям и объектам программы */
protected:
/*список средств, доступных при наследовании*/
};

1
Левша
Левша

это я уже читал не раз, мне смысл не понятен

1
je
jeka1983_83

Я бы посоветовал пройти курс основы программирования! А иначе нет смысла этим заниматься!

1
Левша
Левша

на основах нет машинных кодов

1
je
jeka1983_83

сначала нужно понять что этот такое. А как реализовать это уже другой вопрос! Класс это просто атрибут объекта! Скажем по простому! Лучше пройти курсы программирования!

1
Елена Афанасьева
Елена Афанасьева

Весь реальный мир состоит из объектов. Города состоят из районов, в каждом районе есть свои названия улиц, на каждой улице находятся жилые дома, которые также состоят из объектов.

1
0
Левша
Левша

а во что все это переводит компилятор? как реализована абстракция? везде пишут вот вам класс и делайте то и то, а что это именно такое везде молчок

1
Алена
Алена

Класс — это некоторая идея еще не существующего объекта, в которой воедино собраны все детали, все свойства и все нужные действия необходимые для этого объекта

21
0
Левша
Левша

я там только и засидаю, wasm помер уже, хакер вообще стал детским журналом, а на хабре слишком заумные засели
раньше было меньше форумов и больше общения на них, сейчас все размазалось, да и поколение поменялось, мало кто лезет в низкий уровень, всех скрипты удовлетворяют

1
Алена
Алена

а << хакер >> был когда то взрослым ?

1
Левша
Левша

сейчас называется ит спец, в давние времена статьи были весьма хорошие, да и я тогда молодой был

1
Алена
Алена

))

1
Левша
Левша

мне си++ для плагинов нужен, к той же 3д студии и автокаду, у них документация только на си ++ рассчитана
а учить его ради этого не совсем охота, просто он пока держится как стандарт, и все причуды ООП приходится использовать наугад, да и статей на других языках вообще мало, вирусы на си++ получаются огромные и с побочными эффектами, причем майкрософтский компилятор дико тормозной, приходится хитрить лишний раз, а это надоело

1
Павел Захаров
Павел Захаров

на сколько помню на С++ делали локальные чаты для болтовни и скачки всякой фигни=) фильмы музыка и тд и тп, просто писали на с++.

3
0
Левша
Левша

мне для плагинов стал нужен, я до этого без него обходился

1
Павел Захаров
Павел Захаров

я не работал с программированием=) точно не скажу

1
Левша
Левша

у меня любительский интерес, для графики

1
u_
ufo _

в любом языке есть много избыточности разных средств для разного вкуса и эффективности решения... начните делать...

3
0
Левша
Левша

делать не получится, пока не пойму что это такое

1
u_
ufo _

хорошее понимание приходит на примерах...

1
Левша
Левша

код разобранный в отладчике не видел нигде давно, на старых форумах когда то была ветка пишем свой компилятор
они закрылись половина

1
НН
Некто Ниоткуда

Это такой виртуальный домик для объектов, который объединяет их с целью решить какую-то определенную задачу

11
0
Левша
Левша

скриптовикам и платят хорошо сейчас, и ошибки им прощают, а в системном так не разбежишься

1
Левша
Левша

меня для собственных нужд экзель пока устраивает. только тормозная сильно до сих пор

1
Sub Обнулившийся Zero

Фокал/фортран/бейсик ))))))))))

1
Левша
Левша

мне и бейсика хватает, только с чужими библиотеками чуть неудобен, но привыкнуть можно

1
Левша
Левша

но для графики тормозноват

1
Снежана
Снежана

знаю тут на Спрашке человека, который эксперт по данным вопросам. Надо бы Вам к нему обратиться

0
0
Роман Викторович
Роман Викторович

Во хоть что - то))) Абстракция и шаблон объекта, или трафарет, по которому создается объект.

4
0
Левша
Левша

а в машинном коде как это представляется?

1
Роман Викторович
Роман Викторович

Честно не помню, давно с классами не работал. Выделяется память под класс и в вызывающем коде при создании экземпляра класса создается ссылка на объект в памяти.

1
Левша
Левша

это инкапсуляция что ли такая?

1
Роман Викторович
Роман Викторович

Да можно назвать так, т.к. каждый объект имеет свою область в памяти и не пересекается с другими объектами. А инкапсуляцию в классах, это сокрытие данных, обрабатываемых внутри класса, от внешнего мира.

1
ДО
Дикий Обезъян

Ууу.... как все запущено. Буду краток. Класс в цпп это кирпич на стройке.

0
0
Александр Кулешов
Александр Кулешов

нажмите на руку с поднятым пальцем - остальное за вас сделает С++ !)

13
0
Левша
Левша

в си постоянные обновления идут, в 16й редакции отменили ассемблерные вставки

1
Александр Кулешов
Александр Кулешов

между обновлениями и критическими изменениями - пропасть!

1
Левша
Левша

я пока на классах остановился, некоторые трюки от криса до конца не понятны

1
Александр Кулешов
Александр Кулешов

а для чего изучаете эту требуху?

1
Левша
Левша

что то такого не слышал, и как это поверх окон? оверлей знаю вроде

1
СИ
Снежана Иванова

у нас на Спрашле есть специлист в С++ . Обратитесь к нему)

15
0
Левша
Левша

в вождении как и в программировании главное постоянная практика, перерывы опасны потерей квалификации, некоторые старые водители бывает попадают в аварии на ровном месте

1
Виктор Быков, Ранее Неоднократно Не Судимый
Виктор Быков, Ранее Неоднократно Не Судимый

Я - умею - но не люблю. Хотя и поставил несколько личных рекордов. На стареньких, разбитых "Жигулях" 1470 км до Астрахани по пробкам - за 15 часов. Обратно, по жуткому арбузному трафику (50-100 фур бампер в бампер, не обогнать) - за 26 без остановки и сна. Но - здоровье не позволяеть. Перегнал Жигуль в тайгу стройматериалы возить, - больше не езжу. Всё, хватит

1
Левша
Левша

водители причем разные бывают, районный маршрут, межгород, международники, кто на рефах, кто на фурах, кто всю жизнь на такси

1
Виктор Быков, Ранее Неоднократно Не Судимый
Виктор Быков, Ранее Неоднократно Не Судимый

А кстати - ведь тоже верно!!!

1
Левша
Левша

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

1
Оливка
Оливка

очень классный язык программирования,удобный

2
0
Левша
Левша

только когда лезешь в низкие вещи, мало документации, вообще системное программирование на нем стало сложновато

1
Левша
Левша

а документации на библиотеки мало, меня удивило как устроена конвертация типов в языке, я думал все получше сделано

1
Надя *****
Надя *****

наверное что то оторвись как славно

0
0
Alexandr Kalikin
Alexandr Kalikin

...Магистрат айти. Но не всегда ФАКТ.

5
0
Левша
Левша

а ассемблер тогда что, к.т.н что ли?

1
Alexandr Kalikin
Alexandr Kalikin

Ассе́мблер — сборщик — транслятор исходного текста программы, написанной на языке ассемблера, в программу на машинном языке.

Как и сам язык, ассемблеры, как правило, специфичны для конкретной архитектуры, операционной системы и варианта синтаксиса языка. Вместе с тем существуют мультиплатформенные или вовсе универсальные (точнее, ограниченно-универсальные, потому что на языке низкого уровня нельзя написать аппаратно-независимые программы) ассемблеры, которые могут работать на разных платформах и операционных системах. Среди последних можно также выделить группу кросс-ассемблеров, способных собирать машинный код и исполняемые модули (файлы) для других архитектур и операционных систем С++....— компилируемый, статически типизированный язык программирования общего назначения.

Поддерживает такие парадигмы программирования, как процедурное программирование, объектно-ориентированное программирование, обобщённое программирование, обеспечивает модульность, раздельную компиляцию, обработку исключений, абстракцию данных, объявление типов (классов) объектов, виртуальные функции. Стандартная библиотека включает, в том числе, общеупотребительные контейнеры и алгоритмы. C++ сочетает свойства как высокоуровневых, так и низкоуровневых языкоВ. В сравнении с его предшественником — языком C, — наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования.

1
Левша
Левша

в википедии я тоже давно бывал, но этого маловато. тем более в русскойф

1
Alexandr Kalikin
Alexandr Kalikin

я ещё посмотрю...была русская версия....диск фарматировал.....забыл перекинуть на флэш закладки...стер ... у сына есть...пригонит....отправлю тебе...

1
Левша
Левша

все что касается машинных кодов и низкого уровня нашей литературы мало, а если и есть то кривоватый перевод и все

1
ВН
Вера Носикова

КлассВ С++ это данные и функции

4
0
Левша
Левша

а смысл его использования в чем?

1
Левша
Левша

в си нет классов, но им все равно пользуются до сих пор, обходясь минимальным набором последовательностей

1
ВН
Вера Носикова

Так не хочется учебник брать, я вообще считаю что программа может быть разной, кому счетчики сравнивать кому базу забивать. Но точно помню про классы в книге было

1
Левша
Левша

за них страустрап получил доктора наук, что именно он взял из алгебры в учебниках не пишут, там только пример и все

1
大天
大天使

Да хуй его знает! Пидорок.

0
0
Марина
Марина

язык програмирования

11
0
Левша
Левша

интерес почему то пропал к рисованию

1
Левша
Левша

сам не знаю, просто почему то не охота, а раньше ночами сидел

1
Левша
Левша

может снова займусь, лень пройдет

1
Левша
Левша

я пока программированием занимаюсь, все время отнимает

1
Левша
Левша

с гуманитарными вещами что то стало похуже, может просто не с кем

1
Алексей Бойцов
Алексей Бойцов

Конкретно, что С++?

19
0
Левша
Левша

я фотошоп забросил давно, все равно планшета нормального нет, а мышью некоторые эффекты делать не удобно

1
Алексей Бойцов
Алексей Бойцов

На фотошопе в Москве можно оччччч хорошо заработвть

1
Левша
Левша

там все упирается в жилье, хотя если в хорошей студии осесть, то вполне можно и работать, я фотошопом давно занимаюсь, но некоторых секретов до сих пор не разучил

1
Алексей Бойцов
Алексей Бойцов

Так сначала продай себя, что б фирма захотела видеть тебя своим сотрудником, а , там разберешься

1
Левша
Левша

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

1
Полина Кузьмина
Полина Кузьмина

Я не программист.

9
0
Левша
Левша

33 JC тогда дата смерти и воскрешения

1
ГП
Гений Парадоксов

то что называется возраст Иисуса Христа

1
Левша
Левша

мне будет 33, думаю как отметить

1
ГП
Гений Парадоксов

уйти в монастырь например или добиться рукоположения в сан?

1
Левша
Левша

че то не охота в монастырь

1
Артем Попченко
Артем Попченко

Набор шаблонов

3
0
Левша
Левша

а как ими пользоваться, мне обычно простых функций хватает за глаза

1
Артем Попченко
Артем Попченко

Ясно. Объкеты у Самовара не в почете.

1
Левша
Левша

пока их суть не понятна, смысл их изображать

1
Следующая страница
Похожие вопросы
Вот популярные языки Программирования! *Акцесс*, *Си++, Визуал Бэйсик Питон. Ява. Делфи. Рнр. Ruby. C#. Js. Swift.* К…
Мир делится на два класса — одни верят в невероятное, другие совершают невозможное? А вы ?
как прочитать немецкий текст русскими буквами стр 48 упр 1 7 класс
У вас в классе второгодники были? Если да, то как складывалось общение с ними?
ИИ считывает эмоции и мимику всех учеников в классе и на основе алгоритмов определяет того, кто плохо подготовился. В…
ну вот через час конец работе..и аванс дали.Класс!!!!!
Студент спрашивает у студента: - Тебе делали манту в 3-ем классе? - Да, а чё? - А ты не в курсе мыться уже можно?😁😁😁
Ща наткнулся на вопрос про право-лево и задумался, а каким макаром люди становятся левшами? Ну типо дети пришли в 1 кла…