Форум программистов, компьютерный форум CyberForum.ru

Почему код на С++ работает быстрей - C++

Восстановить пароль Регистрация
 
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,888
Записей в блоге: 1
20.12.2012, 00:27     Почему код на С++ работает быстрей #1
Не как не могу понять за счет чего код написан на С++ работает быстрей чем на C# или на других языках. На С++ работает быстрей и за того что там работаешь с памятью или как ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2012, 00:27     Почему код на С++ работает быстрей
Посмотрите здесь:

Почему при инициализации данных программа работает быстрей? C++
C++ Почему работает данный код?
C++ Почему код не работает?
Почему правильно работает код? C++
C++ почему код не работает?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rus_phantom
6 / 6 / 1
Регистрация: 31.03.2011
Сообщений: 69
20.12.2012, 01:33     Почему код на С++ работает быстрей #2
C++ Язык более низкоуровневый. Меньше условий, меньше проверок, выше скорость работы, выше вероятность бага
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
20.12.2012, 02:28     Почему код на С++ работает быстрей #3
Цитата Сообщение от rus_phantom Посмотреть сообщение
выше вероятность бага
Выше вероятность бага только из-за добавления ++ к Си. А Чистый Си ИМХО идеален.
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,888
Записей в блоге: 1
20.12.2012, 10:01  [ТС]     Почему код на С++ работает быстрей #4
Цитата Сообщение от rus_phantom Посмотреть сообщение
C++ Язык более низкоуровневый. Меньше условий, меньше проверок, выше скорость работы, выше вероятность бага
Ты уверь что С++ низкоуровневый язык программирования ?
Низкоуровневый это Асамблер, WinApi
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
20.12.2012, 10:07     Почему код на С++ работает быстрей #5
Цитата Сообщение от rus_phantom Посмотреть сообщение
C++ Язык более низкоуровневый.
Более высокоуровневый. Но этот язык компилируемый, а байткод интерпретируется. И хотя существует его компиляция "на лету", но нет ни какого способа гарантировать, что вся программа будет скомпилирована из байткода в нативный код. Но интерпретация - это трансляция в процессе исполнения, а в сумме трансляция и исполнение всегда занимают больше времени, чем исполнение. Просто потому, что это две задачи, а не одна и одна в этой паре та же самая, как в случае одного лишь исполнения. Две работы принципиально не возможно на том же оборудовании сделать за то же время, или быстрей, чем одну.

Добавлено через 58 секунд
Цитата Сообщение от rus_phantom Посмотреть сообщение
выше вероятность бага
меньше. По сравнению с гарантией любая другая вероятность только меньше.
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
20.12.2012, 10:13     Почему код на С++ работает быстрей #6
Цитата Сообщение от taras atavin Посмотреть сообщение
байткод интерпретируется


Плюсы быстры за счет общей оптимальности языка(нету всяких gc, много всего делается в compile-time, есть всякие семантики перемещения), а так же за счет того, что компилятору дается огромный простор для оптимизации. И вот как-то так сложилось, что у плюсов самые мощные компиляторы.
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,888
Записей в блоге: 1
20.12.2012, 10:31  [ТС]     Почему код на С++ работает быстрей #7
Цитата Сообщение от diagon Посмотреть сообщение


Плюсы быстры за счет общей оптимальности языка(нету всяких gc, много всего делается в compile-time, есть всякие семантики перемещения), а так же за счет того, что компилятору дается огромный простор для оптимизации. И вот как-то так сложилось, что у плюсов самые мощные компиляторы.
Ясно но мне нравиться C#
Герц
523 / 340 / 4
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
20.12.2012, 11:08     Почему код на С++ работает быстрей #8
Для разных задач разные инструменты
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
20.12.2012, 11:31     Почему код на С++ работает быстрей #9
Цитата Сообщение от Sylar9 Посмотреть сообщение
Низкоуровневый это Асамблер, WinApi
WinAPI это вообще не язык
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
20.12.2012, 11:55     Почему код на С++ работает быстрей #10
Есть мнение, что JIT может оптимизировать код лучше, так как generic-компилятор вынужден клепать более-менее универсальный код, а JIT-компилятор может генерировать заточенный специально под целевую машину.

И, афаик, CLR-код никогда не интерпретируется. Любой выполняемый код прогоняется через JIT один раз, запоминается и исполняется уже нативный скомпилированный код.

Но, тем менее, GC может накладывать немного своих тормозов.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
20.12.2012, 12:14     Почему код на С++ работает быстрей #11
~OhMyGodSoLong~, В Шарпе тормозит не только GC. Так же, он намного более безопасный язык, нежели С++ как бы то ни было. Выстрелить себе в ногу просто в разы тяжелее.
Avazart
 Аватар для Avazart
6904 / 5144 / 253
Регистрация: 10.12.2010
Сообщений: 22,629
Записей в блоге: 17
20.12.2012, 14:44     Почему код на С++ работает быстрей #12
Цитата Сообщение от Deviaphan Посмотреть сообщение
WinAPI это вообще не язык
Наверное имеется ввиду Си стиль.

Цитата Сообщение от ~OhMyGodSoLong~ Посмотреть сообщение
И, афаик, CLR-код никогда не интерпретируется. Любой выполняемый код прогоняется через JIT один раз, запоминается и исполняется уже нативный скомпилированный код.
Другими словами тормозит только первый раз.

Цитата Сообщение от diagon Посмотреть сообщение
Плюсы быстры за счет общей оптимальности языка(нету всяких gc, много всего делается в compile-time, есть всякие семантики перемещения), а так же за счет того, что компилятору дается огромный простор для оптимизации. И вот как-то так сложилось, что у плюсов самые мощные компиляторы.
Чет не понял я про семантики перемещения, это ж вроде сугубо новый стандарт ?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.12.2012, 14:46     Почему код на С++ работает быстрей
Еще ссылки по теме:

Почему не работает этот код? C++
Как и почему работает код? C++
Почему не работает код? C++

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

Или воспользуйтесь поиском по форуму:
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
20.12.2012, 14:46     Почему код на С++ работает быстрей #13
Avazart, RVO/NRVO и прочие оптимизации, которые существуют давно.
Yandex
Объявления
20.12.2012, 14:46     Почему код на С++ работает быстрей
Ответ Создать тему
Опции темы

Текущее время: 18:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru