![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Olexey |
|
|||
|
Unregistered |
Не подскажете в чём разница между C i C++
И что лучше начинать учить(нечем большинство программ для венды); Знаю Pascal и PHP |
|||
|
||||
| DeadSoul |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
С++ -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
|||
|
||||
| Дмитрий Т |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 93 Регистрация: 16.3.2005 Где: Самара Репутация: 4 Всего: 4 |
Сначала был C, потом появился C++ как его расширение, потом C обновили и он перестал быть просто частью C++.
Но по большей части C++ это C с дополнительными удобствами, так что учи сразу C++ - больше знать будешь |
|||
|
||||
| DeadSoul |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
ЭТО РАЗНЫЕ ЯЗЫКИ! -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
|||
|
||||
| nikitao |
|
|||
![]() Кот-программист ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1206 Регистрация: 30.8.2005 Где: Спб Репутация: 1 Всего: 26 |
Добавлено @ 21:14 Первоночальное название С++ было "C с классами" делаем выводы во взаимоотношениях C и С++ -------------------- Жизнь - печальная штука. |
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
С++ - прямой наследник C, но называть его расширением C едва ли возможно.
-------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| SectoR |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 5.10.2005 Репутация: нет Всего: нет |
С#
|
|||
|
||||
| nikitao |
|
|||
![]() Кот-программист ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1206 Регистрация: 30.8.2005 Где: Спб Репутация: 1 Всего: 26 |
С++ - прямой наследник C, но называть его расширением C едва ли возможно.
Что мы вкладываем в это СЛОВО???????? Это сообщение отредактировал(а) nikitao - 18.10.2005, 21:35 -------------------- Жизнь - печальная штука. |
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
nikitao
Язык, полученный из другого языка простым добавлением фич. C++, имхо, эту грань перешел (эдак к середине 90-х), хотя почти полная обратная совместимость с Си до сих пор обеспечивается (и зря...). -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| nikitao |
|
||||
![]() Кот-программист ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1206 Регистрация: 30.8.2005 Где: Спб Репутация: 1 Всего: 26 |
Вот именно этот смысл лично я вкладываю в смысл слова "расширенный".
Why? -------------------- Жизнь - печальная штука. |
||||
|
|||||
| SectoR |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 5.10.2005 Репутация: нет Всего: нет |
Советую учить C#, т.к. платформа ".NET - наше светлое будующее"!
(цитата: А.Я. Архангельский <<Программирование в C++ Builder 6>> 2-е издание Бином 2005 стр. 36). Это сообщение отредактировал(а) SectoR - 19.10.2005, 16:10 |
|||
|
||||
| DeadSoul |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
-------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
|||
|
||||
| val |
|
|||
![]() Program developer ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 992 Регистрация: 14.1.2003 Где: г. Киев Репутация: нет Всего: 7 |
Последнее время С всё больше становится языком для программирования встроенных систем. Ну а С++ больше для персоналок. Но начинать, мне кажется все равно надо С, так как это подмножество С++.
-------------------- Терпимость - величайшее благо человечества... Ярчайший признак интеллекта – постоянно хорошее настроение… |
|||
|
||||
| chipset |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 27 Всего: 165 |
А на вопрос так никто и не ответил
C++ -- обьектно-ориентированный язык, Си - процедурный. --------------------
|
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
Мультипарадигменный (+ обобщенное программирование), если на то пошло. По крайней мере, Страуструп так утверждает -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| chipset |
|
||||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 27 Всего: 165 |
А что это, если не секрет? Добавлено @ 17:36
Советую не оффтопить во избежание неминуемых последствий. Спасибо. --------------------
|
||||||
|
|||||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
Подход, благодаря которому мы имеем STL и много других вкусностей http://en.wikipedia.org/wiki/Generic_programming + Why C++ isn't just an Object-Oriented Programming Language -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| DeadSoul |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
А ты ходил по моей ссылке? Добавлено @ 20:03
http://www.ozon.ru/context/detail/id/1224782/ -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
||||
|
|||||
| nikitao |
|
|||
![]() Кот-программист ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1206 Регистрация: 30.8.2005 Где: Спб Репутация: 1 Всего: 26 |
Ну если уж на то пошло,то еще и в названии,годе выхода(С++ позже),разработчиках -------------------- Жизнь - печальная штука. |
|||
|
||||
| chipset |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 27 Всего: 165 |
О, теперь я знаю на одно умное слово больше, спасибо --------------------
|
||||
|
|||||
| yaja |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 98 Регистрация: 30.3.2005 Где: Санкт-Петербург Репутация: 1 Всего: 1 |
От таких вкусностей живот пучит... Человек изучай С, а если потянет на ООП писать, то изучишь java, а не язык гибрид |
|||
|
||||
| DeadSoul |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
yaja, может не надо религиозных войн? Каждый язык предназначен для своего и спорить о том, что круче бесполезно.
-------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
|||
|
||||
| nikitao |
|
|||
![]() Кот-программист ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1206 Регистрация: 30.8.2005 Где: Спб Репутация: 1 Всего: 26 |
Не нравится не ешь,они же сами в твой рот (програмный код) не полезут. -------------------- Жизнь - печальная штука. |
|||
|
||||
| yaja |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 98 Регистрация: 30.3.2005 Где: Санкт-Петербург Репутация: 1 Всего: 1 |
Бесспорно, только разве я говорил, что круче Я просто посоветовал человеку, как поступить (имхо) лучше
Еще как лезут, особенно, когда начальство за спиной стоит |
||||
|
|||||
| DeadSoul |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
В чем лучше? -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
|||
|
||||
| Neitron |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 580 Регистрация: 3.10.2005 Где: Москва Репутация: 2 Всего: 5 |
Лучше всего учить С++, а не СИ.
У С++ свой стиль программирования, и испоьзовать стиль из другого языка неприемлено. Это ведет к неуклюжему и сложному коду. С - является лишь подмножеством языка С++. С был лишь основой С++. Но С++ действительно гибрид и других языков. В нем соеденены Simula67, Algo68, Ada и др. Это сообщение отредактировал(а) Neitron - 21.10.2005, 09:09 -------------------- Хороший программист никогда ничего не делает хорошо с первого раза. Он понимает важность патчей. Ⓘ ⓁⒾⓀⒺ ⓂⓄⓏⒾⓁⓁⒶ |
|||
|
||||
| Neitron |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 580 Регистрация: 3.10.2005 Где: Москва Репутация: 2 Всего: 5 |
Раньше это было не зря.
Это сообщение отредактировал(а) Neitron - 21.10.2005, 09:39 -------------------- Хороший программист никогда ничего не делает хорошо с первого раза. Он понимает важность патчей. Ⓘ ⓁⒾⓀⒺ ⓂⓄⓏⒾⓁⓁⒶ |
|||
|
||||
| szz |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1289 Регистрация: 31.5.2005 Где: Moscow, Jerusalem Репутация: нет Всего: 33 |
Кароче. Надо разумеется взять книжку Кернигана и Ричи "Язык программирования Си" и проштудировать, сделать все задания оттуда.
А потом - С++. Я сам обожаю С++, но основы есть основы. Это - типа классический подход к изучению. Важный момент: на сегодняшний день язык, который создает быстрый и компактный код (кроме, разумеется ассемблеров): Это Си. С++ ориентировочно в 8 раз медленее чем Си и генерит гораздо большие экзешники размерами. --------------------
|
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
Ну постеснялись хоть бы такой бред говорить... -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| DeadSoul |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
Абсолютно разные стили программирования.
В некоторых местах в 19 раз(stringstream vs printf) . Но это скорее исключение. Одна из целей Страуструпа была создать язык программирования по эффективности не уступающий Си(без плюсов) -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
||||
|
|||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
Скорее, недоразумение авторов конкретной реализации STL P.S. Пока писал тестик на 20 строк, успел один раз получить AV из-за buffer overrun в sprintf. Нафиг ее, такую "скорость". -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| szz |
|
||||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1289 Регистрация: 31.5.2005 Где: Moscow, Jerusalem Репутация: нет Всего: 33 |
Мусьё, вот вы и попались! Постеснялись бы стеснять Спросите разработчиков того же самого PHP - что, они ради своего удовольствия колупают на Сях? Ах как было бы удобно построить огроменную иерархию классов для парсера PHP! А вот низя ))) Число 8 не с потолка взято, позвольте заметить.
С++ные потоки - вообще уже притчей во язытцах давным-давно стали Ну все ладно, хватит пустословить. Человек получил ответ на свой вопрос,
Это ручки ))) нечего sprintf ругать Забавные результаты. Одно включение iostream (супротив stdio.h) должно все на уши поставить. Как, кстати, тестируем? Чем считаем-с? --------------------
|
||||||||
|
|||||||||
| Void |
|
||||||||||||||||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
А парни из Remedy не знали, и облажалась, выпустив Max Payne 2, написанный на C++... и движок почему-то летает. Или gamedev == Кармак?
Да кто их знает
Ну, выкладывайте свой секрет бенчмаркинга
Ну не смог я с первого раза правильно посчитать в уме необходимый размер буфера. Позор мне за это.
Как?!
clock'ом, однако
vs аналоги. P. S. Тема отчетливо запахла Религиозными войнами... -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||||||||||||||
|
|||||||||||||||||
| S.A.P. |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 9 Всего: 71 |
а какие еще аналоги?
дык STL проиграет заведомо |
||||
|
|||||
| Void |
|
||||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
std::ostringstream и boost::format
Проиграла. В 3 раза. А не в 8-19, как утверждают -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||
|
|||||
| S.A.P. |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 9 Всего: 71 |
Void а как тестировал? В случае со sprintf всё в С строку загонял или в string ?
|
|||
|
||||
| Void |
|
||||||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
А второй вариант... это как вообще?
Это сообщение отредактировал(а) Void - 21.10.2005, 22:21 -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||||
|
|||||||
| S.A.P. |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 9 Всего: 71 |
Void дык понятное дело, ostringstream string использует, ему расширяться надо каждый раз, а под C строки тут сразу память выделяется .
Добавлено @ 22:38 А у меня вобще интересные тесты:
|
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
Perchilla
Переделал, посмотрел. Прирост на пару процентов. Реаллокация - не самое узкое место. Потоки действительно медленнее, но, повторюсь, эта медленность в большинстве случаев оправдывается (типо)безопасностью. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| S.A.P. |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 9 Всего: 71 |
это я на VC 71 компилил а mingw вобще ужас на крыльях ночи выдает
|
||||
|
|||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
STLPort, небось?
-------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| S.A.P. |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 9 Всего: 71 |
нет, все по старинке |
|||
|
||||
| DeadSoul |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
[quote=szz, 21.10.2005, 21:25]Цитата (DeadSoul @ 21.10.2005, 20:11)
В некоторых местах в 19 раз(stringstream vs printf) Обшибся... В 9 раз для MS VC 7. В 19.2 - это boost::lexical_cast Источник: Саттер,Новые сложные задачи на С++ [quote=szz, 21.10.2005, 21:25]Цитата (Void @ 21.10.2005, 20:43) Пока писал тестик на 20 строк, успел один раз получить AV из-за buffer overrun в sprintf. Нафиг ее, такую "скорость". Это ручки ))) нечего sprintf ругать[/quote] Это означаят, что я как параноик должен проверять каждый символ. -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
|||
|
||||
| S.A.P. |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 9 Всего: 71 |
А boost::format в mingw 20625 ms работал Это сообщение отредактировал(а) Perchilla - 21.10.2005, 23:33 |
|||
|
||||
| DeadSoul |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
Perchilla, самому прогонять тескты слишком сложно. Современные компиляторы слишком хорошо оптимизируют. И у тебя стоит двойная цель: - оставить компилятору возможность для оптимизациии - убить ненужную оптитмизацию. ПРимер:
компилер может выкинуть -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
||||
|
|||||
| Void |
|
||||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
Это недостаток?
Почему же ненужную? Зачем может быть нужен пустой цикл на миллион итераций? В качестве задержки? Так есть способы получше. Вспоминается CRT от древнего TP 7.0, в которой задержки делались именно пустыми циклами, с калибровкой при старте. Прошло время, процессоры стали быстрее, и все это стало нещадно глючить. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||
|
|||||
| Mayk |
|
||||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 45 Всего: 134 |
Не будем столь категоричными. Ведь есть же snprintf!
Для сравнения некий дядя Майерс говорил о 20%-200% потерях скорости при использоваии иостреам на разных конфигурациях. При этом он допускал возможность написания вывода столь же быстрого как и сам stdio. (смотреть наиболее эффективное программирование, правило 34 по-моему - "юзайте разные либы") -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||
|
|||||
| DeadSoul |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
Все это было к тому, что крайне сложно сделать грамотную оченку по скорости -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
|||
|
||||
| powerfox |
|
|||
![]() I wanna fork() ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3990 Регистрация: 1.10.2005 Где: Санкт-Петербург Репутация: 2 Всего: 97 |
Архангельский - плохой автор! |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |