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

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

24.11.2019, 14:46. Показов 5247. Ответов 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
9005 / 4706 / 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
9005 / 4706 / 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
9005 / 4706 / 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
9005 / 4706 / 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
9005 / 4706 / 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
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение Это мой обзор планшета X220 с точки зрения школьника. Недавно я решила попытаться уменьшить свой. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru