правительство надеется устанавливать личность преступников — причем сделать это можно будет очень быстро.
Причём это можно сделать не только очень быстро, но и очень неправильно. Глупые сериалы создают впечатление точного процесса (проценты они бывают ещё показывают… для "правдоподобности"), когда на самом деле анализ результатов сравнения в значительной степени выполняется людьми (полное интервью, если кому интересно).
Причуда компилятора (может если %eax является операндом не с той стороны, то шаблон для генерации cmov не срабатывает; хотя скорее тут что-то посложнее).
Вообще, в Vim и сделано примерно как описано выше, только это "окно" определяется по строкам, столбцы не обрезаются. Правила отсечения "окна" (как далеко идти наверх от верхней строки, чтобы попасть в начальное состояние) определяются в правилах подсветки синтаксиса. Если где-то тормозит, то стоит править там в первую очередь. И да, оно бывает неправильно срабатывает из-за этого, но довольно редко. Детали в :help syn-sync.
You agree that all Subscriber Content that You contribute to the Network is
perpetually and irrevocably licensed to Stack Exchange under the Creative
Commons Attribution Share Alike license.
Первый раз втречаю такую трактовку и не сказал бы, что мог бы предположить её существование. Для меня это лишний раз показывает ошибочность практики применения записи «C/C++».
Согласно Вашему же комментарию выше, C/C++ следует трактовать одним из следующих способов:
C и C++
C или C++
Теперь посмотрите на оба и подумайте об их применимости. Если это вакансия или резюме, то знание «C или C++» звучит как минимум бредово, но скорее абсолютно некорректно. С вариантом «C и C++» другая проблема, на удивление мало людей действительно знает их как два самостоятельных языка: знающие C зачастую не знают практически ничего из C++, знающие C++ (по моему опыту) думают, что в C есть ссылки, нету typedef, без понятия о функциях вроде strspn(), не знают отличий приведения типов и т.д.
Т.е. приходим к выводу, что применимость обозначения «C/C++» настолько узкая, что оно практически всегда применяется неправильно. А если ещё и учесть двоякость трактовки («и» или «или»), то смысл использования такой записи вообще теряется, так как не понятно, что хотели сказать.
Просто в фильмах обычно ограничиваются несколькими. Ознакомиться со многими другими можно послушав список от Джорджа Карлина (кстати, на это выступление были субтитры с «художественным» переводом на русский, но, кажется, это были hardsub).
А вообще такие вещи лучше писать и обсуждать в лс, нежели в комментариях.
Это спорно. Вам тогда придётся отвечать одно и то же несколько раз, а разным пользователям задавать один и тот же вопрос. А так этот комментарий можно найти и никого не беспокоить лишний раз.
Если будете переводить, обязательно исправьте ошибки в самом начале, а то я даже не знаю стоит ли читать дальше шапки, в которой 4 из 7 примеров неправильные. Вот они:
char p1[25] = "" ; // will set the first character to 0 (нет, не только первый)
// ...
wchar_t p3[25] = L"" ; // will set the first character to 0 (нет, не только первый)
// ...
int p5[37] = {-1} ; // will set the 37 values to -1 (нет, только первый)
unsigned int p6[10] = {89} ; // will set the 10 values to 89 (нет, только первый)
Даже в IDE оно не всегда правильно работает и не всегда проект можно настроить так, чтобы работало. На огромных проектах под кучи платформ, где это действительно нужно, оно обычно и работает хуже всего (показывает не для той целевой платформы, например; плюс не всегда быстро). И в целом не хотелось бы завязывать язык на работу в IDE.
Причём это можно сделать не только очень быстро, но и очень неправильно. Глупые сериалы создают впечатление точного процесса (проценты они бывают ещё показывают… для "правдоподобности"), когда на самом деле анализ результатов сравнения в значительной степени выполняется людьми (полное интервью, если кому интересно).
Исходный вариант (
return a>b ? b:a;
):Модифицированный вариант (
return b>a ? a:b;
):Причуда компилятора (может если
%eax
является операндом не с той стороны, то шаблон для генерацииcmov
не срабатывает; хотя скорее тут что-то посложнее).Intel® Core(TM) i7-4790 CPU @ 3.60GHz
gcc version 5.3.0 (GCC)
-std=c++11 -O3 -march=native
последовательно:
хаотично:
Вообще, в Vim и сделано примерно как описано выше, только это "окно" определяется по строкам, столбцы не обрезаются. Правила отсечения "окна" (как далеко идти наверх от верхней строки, чтобы попасть в начальное состояние) определяются в правилах подсветки синтаксиса. Если где-то тормозит, то стоит править там в первую очередь. И да, оно бывает неправильно срабатывает из-за этого, но довольно редко. Детали в :help syn-sync.
Сейчас:
«all»
«Creative Commons Attribution Share Alike license»
Я так понимаю, что ничего не поменялось.
Т.е. приходим к выводу, что применимость обозначения «C/C++» настолько узкая, что оно практически всегда применяется неправильно. А если ещё и учесть двоякость трактовки («и» или «или»), то смысл использования такой записи вообще теряется, так как не понятно, что хотели сказать.