Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.88/25: Рейтинг темы: голосов - 25, средняя оценка - 4.88
"C with Classes"
2022 / 1404 / 523
Регистрация: 16.08.2014
Сообщений: 5,885
Записей в блоге: 1

Для чего нужен C++?

24.11.2019, 14:46. Показов 5670. Ответов 53
Метки c++ (Все метки)

Студворк — интернет-сервис помощи студентам
Уважаемые, я учу C++ уже 7 лет, зачем нужен C++?
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.11.2019, 14:46
Ответы с готовыми решениями:

Для чего нужен с++?
Я школьник, мне 16 лет, учусь в 10 классе, планирую поступить на факультет защиты информационных технологий. Сейчас начал изучать с++, не...

Для чего нужен define?
Для чего нужен оператор define? например код #define N 20 /* сколько первых чисел посчитать */ void main(){ ...

Для чего нужен break?
для чего нужен break?

53
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
28.11.2019, 18:00
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от hoggy Посмотреть сообщение
UB: мы не знаем, что произойдёт, но скорее всего ничего хорошего.
Например, name[index]=0 будет соптимизировано в name[0]=0. Причем, в зависимости от ключей компилятора и погоды на Марсе. Так как выход за границы массива - UB, то компилятор вроде как и не обязан этот выход поддерживать.

Вот я о том и говорю, что не надо путать. При не уточняемом поведении какие-то правила игры все же задаются. Пусть и автором конкретного компилятора. При неопределенном компилятор может творить что угодно. Другой вопрос что конкретно в случае выхода за границы массива авторы компиляторов наглеть не будут, так как понимают что уже существующий код сломается.
Цитата Сообщение от hoggy Посмотреть сообщение
хотя лично я всё равно предпочитаю (void) arg;,
потому что это удобнее.
(более копипаста-ориентированное).
Тогда уж новомодный [[maybe_unused]] перед объявлением переменной, В gcc для Си есть аналогичный __attribute__((unused)), но на сколько мне известно это расширение конкретно gcc, а не часть стандарта.
0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
28.11.2019, 18:27
Цитата Сообщение от Renji Посмотреть сообщение
Тогда уж новомодный [[maybe_unused]] перед объявлением переменной, В gcc для Си есть аналогичный __attribute__((unused))
какая то она у вас длинная и уродливая, эта новая мода.

я уж лучше по старинке.
и буковок меньше,
и заголовки функций портить не нужно.
0
"C with Classes"
2022 / 1404 / 523
Регистрация: 16.08.2014
Сообщений: 5,885
Записей в блоге: 1
28.11.2019, 18:59  [ТС]
Цитата Сообщение от IGPIGP Посмотреть сообщение
лучше наоборот.
что бы иметь мерседес нужно мечтать о самолете, я вообщем хотел сказать, когда сказал что мета начал учить что бы обобщенку повсеместно выучить, что хочу все тонкости шаблонной магии знать, а мета как раз всех их и раскрывает, (там есть как говорил Мейерс даже такие понятия как уровни абстракции, мол трейтсы это ассемблер в мире метапрограмм) я же правильно понимаю?
цитаточка:

Например,
в правиле 47 показано, как в TMP условные предложения if…else выражаются с помощью
шаблонов и их специализаций. Но такие конструкции можно назвать «TMP уровня
ассемблера». В библиотеках для работы с TMP (например, MPL из Boost – см. правило 55)
предлагается более высокоуровневый синтаксис, хотя его также нельзя принять за
«нормальный» С++.
Скотт Мейерс

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

Цитата Сообщение от IGPIGP Посмотреть сообщение
Тут мужики много полезного для новичков рассказывают... Это нужно. Пусть слабонервные сразу умрут или отвянут. Новички должны иметь железные Я. Мощные и несгибаемые Эго, в смысле. Ты молод и у тебя Эго не согнёшь, я думаю. А это главное. Остальное приложится. К той или иной стороне.
относительно не молод и не стар, чуть меньше середины я надеюсь, а на счет эго, если мое племя хором попытается это сделать, в лес уйду. против массы идти можно только не большой.

Добавлено через 1 минуту
ПС,
Я кстати не ожидал, что тут такие жаркие споры возникнут, прошу закончить бессмыслицу. или в споре умных людей рождается истина?
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
28.11.2019, 19:52
Цитата Сообщение от _stanislav Посмотреть сообщение
Например,
в правиле 47 показано, как в TMP условные предложения if…else выражаются с помощью
шаблонов и их специализаций. Но такие конструкции можно назвать «TMP уровня
ассемблера».
Я думаю, речь о том, что данные конструкции являются элементарными средствами ветвления уровня компиляции (если директивы условной компиляции не вспомнить на ночь). Для тюринг-полноты нужны ещё циклы и тут работает рекурсивное инстанцирование. Можно это и ассемблером назвать. Но это литература. Для лучшего понимания предмета Александреску лучше (имхо).
Цитата Сообщение от _stanislav Посмотреть сообщение
на счет обобщенного, мне кажется там особенно сложного нет
Это ты не копнул, просто. Технически у GP и TMP много общего. Правила вывода аргументов - оргия огня и металла. Но обобщённое даёт более наглядные результаты. Это кроме проектирования. Даже уже готовые шаблоны stl - осязаемы и видны на каждом шагу. А без обобщёнки TMP это полная GP. С нуля.
Но я не настаиваю.
1
"C with Classes"
2022 / 1404 / 523
Регистрация: 16.08.2014
Сообщений: 5,885
Записей в блоге: 1
28.11.2019, 20:13  [ТС]
Цитата Сообщение от IGPIGP Посмотреть сообщение
А без обобщёнки TMP это полная GP. С нуля.
я правильно понимаю, что на принципах GP STL основана? начинаю ощущать себя нубом, но это мое нормальное состояние, по этому и учусь.

Добавлено через 1 минуту
Цитата Сообщение от _stanislav Посмотреть сообщение
я правильно понимаю, что на принципах GP STL основана?
при этом ответе ни в какие мануалы не смотрел. общения ради. (электричество выключили)
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
28.11.2019, 21:09
Цитата Сообщение от _stanislav Посмотреть сообщение
я правильно понимаю, что на принципах GP STL основана?
Не только на них, но и на них тоже. Хотя сегодня заставляют говорить просто standard library)
Но может быть правильнее сказать, как-то вроде: Обобщённое программирование в С++ выражается в том числе статическим полиморфизмом шаблонов. Динамическая подтипизация тоже относится к обобщённому программированию. Но сам термин родился до плюсов и есть разные определения. Я не шибко люблю терминологию в программировании.
1
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
29.11.2019, 01:13
Цитата Сообщение от _stanislav Посмотреть сообщение
мол трейтсы это ассемблер в мире метапрограмм
Я вот не согласен, как по мне, вообще ничего общего. Единственное что меня иногда раздражает в книжках Мейерса это не уместные аналогии, когда можно было бы и без них обойтись.
В общем случае я бы сказал, что трейтсы это примитивы для мета-языка шаблонов.
1
"C with Classes"
2022 / 1404 / 523
Регистрация: 16.08.2014
Сообщений: 5,885
Записей в блоге: 1
29.11.2019, 01:36  [ТС]

Не по теме:

Azazel-Sanя пока не могу ответить адекватно



Добавлено через 57 секунд
хорошо что споры прекратились.

Добавлено через 3 минуты
я подниму тему как стану нормальным
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
29.11.2019, 10:47
Цитата Сообщение от Azazel-San Посмотреть сообщение
ничего общего
Цитата Сообщение от Azazel-San Посмотреть сообщение
В общем случае я бы сказал, что трейтсы это примитивы для мета-языка шаблонов.
А ассемблер - можно рассматривать как набор примитивов для мета-языка конкретного процессора. Это не бинарный код конечно. А макро-ассемблеры обобщая семейства и подавно подходят под такое определение.
Как по мне, Мейерс имеет весомое право на персональный взгляд. И ему есть за что сказать спасибо. Что касается раздражения, то даже Пратта имеет смысл читать, для полноты, хотя у него "мест" просто много.
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
29.11.2019, 16:23
Цитата Сообщение от IGPIGP Посмотреть сообщение
можно рассматривать как набор примитивов для мета-языка конкретного процессора
Ну вот, опять уходим в ненужные сравнения.
Цитата Сообщение от IGPIGP Посмотреть сообщение
Как по мне, Мейерс имеет весомое право на персональный взгляд. И ему есть за что сказать спасибо. Что касается раздражения, то даже Пратта имеет смысл читать, для полноты, хотя у него "мест" просто много.
??
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
29.11.2019, 16:58
Цитата Сообщение от Azazel-San Посмотреть сообщение
Ну вот, опять уходим в ненужные сравнения.
Почему не нужные? Azazel-San, я не определяю, что нужно, а что нет. Моё мнение таково, что Мейерс вполне нормально выразил свою мысль. Мета код это код для генерации кода. У него есть примитивы самого нижнего уровня. Что касается сентенции в защиту Мейерса, то я переборщил, - каюсь. Он в ней не нуждается. Я и правда не люблю эмоций по поводу великих людей. Но, все мы дети Страуструпа. А на детях Страуструпа, как известно, природа отдыхает.
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
29.11.2019, 17:04
Цитата Сообщение от IGPIGP Посмотреть сообщение
Почему не нужные?
Потому, что они могут порождать ложные понимания.
Цитата Сообщение от IGPIGP Посмотреть сообщение
Моё мнение таково, что Мейерс вполне нормально выразил свою мысль.
Мысли он выражает отлично, но иногда (ИМХО), можно было бы и поменьше вот этих аналогий.
Цитата Сообщение от IGPIGP Посмотреть сообщение
А на детях Страуструпа, как известно, природа отдыхает.
)
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
29.11.2019, 17:58
Цитата Сообщение от Azazel-San Посмотреть сообщение
Потому, что они могут порождать ложные понимания.
Сомнения Великого Инквизитора о судьбах Добра в этом мире? Бросьте. Мы лишь обмениваемся своими мыслями. И если я высказываю несовпадение, это не значит, что я утверждаю вашу неправоту. Борьба за жизнеспособность начал порождающих добро, и против происков Лукавого мне не присуща. Кроме случаев когда кто-то явно лажает)
Мейерс легендарная личность. У него много "страшилок", но он же Лектор (Ганнибал)) ). Он сам себя величает an explainer - объяснитель. За это ему платили, а он ездил и вещал, вещал, вещал. И он делал это артистично, с юмором и достаточно изобретательно в плане афористичности и эмоциональности. Это потому, что он знает как лучше создавать ассоциации легкие к усвоению по сути и запоминанию по форме. Отсюда и стиль, я думаю.
Что касается шаблонов, то достаточно вспомнить его предисловие к бестселлеру Современное проектирование на С++. А.Александреску, где он говорит о том, как сильно он опоздал с шаблонами, чтобы понять, что он не самый большой эксперт в этой части. Хотя вполне большой и вполне надёжный.
0
"C with Classes"
2022 / 1404 / 523
Регистрация: 16.08.2014
Сообщений: 5,885
Записей в блоге: 1
29.11.2019, 20:35  [ТС]
Azazel-San, я тебя понимаю, сам иногда люблю поспорить, намеренно выбрать противоположную позицию и отстаивать свое мнение, это нормально.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.11.2019, 20:35

Для чего нужен Sizeof
Вот строка memcpy(pMatrPr, pMatr, sizeof(double) * n * m); Это копирование исходной матрицы в преобразованную А что такое...

Для чего нужен EOF?
задание такое:написать программу, печатающую все вводимые символы в верхнем регистре, в строку выодится 16ричный и 8ричный код. #include...

Для чего нужен конструктор?
если несложно, то объясните для чего нужен конструктор? я прочитал, что он требуется для того,чтобы присваивать значение полям класса....

Для чего нужен rdstate()
Например cout<<"sdxcfc"<<output.rdstate(); Где output объект ostrstream

Для чего нужен символ \b?
для чего нужен символ \b??


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

Или воспользуйтесь поиском по форуму:
54
Ответ Создать тему
Новые блоги и статьи
GitDOS: Когда я решил скрестить MS-DOS, GitHub и Claude
MaGz GoLd 08.07.2026
Привет, Киберфорум! Хочу поделиться своим проектом, который, надеюсь, вас заинтересует. GitDOS — это веб-приложение, которое позволяет запускать DOS в браузере с тремя крутыми фичами: диски живут в. . .
Учебный мини "цифровой двойник" = (Сервер = Java + Flask_питон )+(3D = Гугловскаая 4T nvideo + google colab) +( WMS = Odoo на Docker)
anaschu 07.07.2026
Увидел в требованиях к вакансии создателя имитационных моделей связку (REst + Api + WMS + Anylogic + питон + 3D Nvideo), и решил посмотреть, что это такое. Из этого всего я работал более менее. . .
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал. Оно само - говорит. Кто слышит тот слышит.
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась. Первый вариант. . .
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2. Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет. Но обычно это 50 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru