Вопросы по теме 'compiler-construction'

Порядок логики C# и поведение компилятора
В C# (и не стесняйтесь отвечать на другие языки) в каком порядке среда выполнения оценивает логический оператор? Пример: DataTable myDt = new DataTable(); if (myDt != null && myDt.Rows.Count > 0) { //do some stuff with myDt }...
3821 просмотров

Вы когда-нибудь разбивали компилятор?
Каждый (по крайней мере, каждый, кто использует скомпилированный язык) сталкивался с ошибками компиляции, но сколько раз у вас действительно может произойти сбой компилятора? У меня была изрядная доля «внутренних ошибок компилятора» , но...
4846 просмотров

Компилятор С++ оптимизирует переданные аргументы
Я использую модуль ведения журнала, который может включать/отключать отчеты во время выполнения. Звонки обычно идут примерно так: WARN( "Danger Will Robinson! There are " + boost::lexical_cast<string>(minutes) + " minutes of...
1233 просмотров

Почему C # не предлагает константности, подобной C ++?
Ссылки в C # очень похожи на ссылки в C ++, за исключением того, что они собираются сборщиком мусора. Почему тогда компилятору C # так сложно поддерживать следующее: Члены функций отмечены const . Ссылки на типы данных (кроме строк),...
1203 просмотров

Проверить, является ли переменная нулевой, прежде чем присваивать ей значение null?
Дорого ли присвоение переменной по сравнению с нулевой проверкой? Например, стоит ли проверять, что foo не равно null, прежде чем присваивать ему значение null? if (foo != null) { foo = null; } Или это ни о чем не беспокоит?
10573 просмотров

Как скомпилировать простой файл C с помощью GNU C Compiler/gcc и Mobile-Terminal на iPhone?
Как скомпилировать простой файл C с помощью GNU C Compiler/gcc и Mobile-Terminal на iPhone?! Нужны ли мне дополнительные файлы?
4794 просмотров
schedule 08.05.2023

CLR против JIT
В чем разница между JIT-компилятором и CLR? Если вы компилируете свой код в il и CLR запускает этот код, то что делает JIT? Как изменилась JIT-компиляция с добавлением дженериков в CLR?
30491 просмотров
schedule 06.09.2022

Как это работает внутри int const iVal = 5; (целое&)iVal = 10;
Я хотел знать, как работает следующее на уровне компилятора. int const iVal = 5; (int&)iVal = 10; Немного m/c или ответа на уровне компилятора было бы здорово. Заранее спасибо.
851 просмотров
schedule 04.12.2022

Какие компиляторы C имеют недостающие значения при вычитании указателя?
Итак, как я узнал из комментариев Майкла Берра к этот ответ , стандарт C не поддерживает целочисленное вычитание из указателей за первым элементом в массиве (который, как я полагаю, включает любые выделенные объем памяти). Из раздела 6.5.6...
850 просмотров

CompilerParameters.ReferencedAssemblies Добавить ссылку на System.Web.UI.WebControls
Я компилирую классы во время выполнения, используя класс CodeDomProvider . Это отлично работает для классов, использующих только пространство имен System : using System; public class Test { public String HelloWorld() { return...
17766 просмотров
schedule 07.07.2023

Обновите GCC на OSX
Итак, я новый программист, и я только что установил XCode на свой Macbook, чтобы получить GCC. Я думаю, что Xcode — единственный способ получить GCC на OSX. Теперь, когда я запускаю свое приложение Hello World на C++, g++ показывает, что это версия...
124471 просмотров
schedule 16.04.2022

Почему Python компилирует исходный код в байт-код перед интерпретацией?
Почему Python компилирует исходный код в байт-код перед интерпретацией? Почему бы не интерпретировать напрямую из источника?
4341 просмотров

Почему в Delphi (dcc32.exe) есть возможность задать путь поиска по пространству имен?
Компилятор (dcc32.exe) в Delphi 2007 и 2009 имеет опцию -NS<namespaces> = Namespace search path Связано ли это с параметрами компилятора «Пространство имен по умолчанию» и «Префиксы пространства имен» в диалоговом окне параметров...
2083 просмотров

Два класса, которые ссылаются друг на друга
Я новичок в С++, поэтому этот вопрос может быть основным: У меня есть два класса, которые должны ссылаться друг на друга. Каждый находится в своем собственном заголовочном файле, а #include — в заголовочном файле другого. Когда я пытаюсь...
25008 просмотров
schedule 22.12.2022

Как реализовано множественное наследование C++?
Одиночное наследование легко реализовать. Например, в C наследование можно смоделировать так: struct Base { int a; } struct Descendant { Base parent; int b; } Но при множественном наследовании компилятор должен расположить несколько...
7402 просмотров

Где компилятор тратит большую часть своего времени во время синтаксического анализа?
Я прочитал в книге Sebesta , что компилятор тратит большую часть своего времени на лексирование исходного кода. Итак, оптимизация лексера — необходимость, в отличие от синтаксического анализатора. Если это так, то почему этап лексического анализа...
704 просмотров

Язык программирования и компилятор
Я обсуждал это с моим другом и понял, что это может быть лучшим местом, чтобы задать этот вопрос? Как рождается новый язык? Этот новый язык NEW должен быть написан на каком-то старом языке OLD (например, C ++ был написан на C на начальных этапах),...
781 просмотров

Почему Eclipse компилирует это, а javac — нет?
У нас есть несколько модульных тестов, которые отлично компилируются и работают в Eclipse 3.4, но когда мы пытаемся скомпилировать их с помощью javac, происходит сбой. Мне удалось сократить код до чего-то небольшого и автономного, поэтому он не имеет...
1532 просмотров
schedule 15.02.2023

Где разрешается контекстная чувствительность в процессе компиляции C ++?
Вчера я спросил о чувствительности контекста C ++, см. здесь . Среди множества отличных ответов здесь есть принял один, dmckee . Однако я все же думаю, что по этому поводу есть что сказать (может быть, терминологическая путаница?). Вопрос...
711 просмотров
schedule 13.02.2022

Программа вылетает при выходе из функции c++ Как вы думаете, что это?
У меня есть код C++, я использую MSC9 для его компиляции. Он продолжает падать случайным образом. Например, он падает, если вызывается из Perl с помощью ``, но не падает, когда вызывается из командной строки или из Ultimate++. Я имею в виду вызов...
4739 просмотров