Описание тега language-details

3 ответа

Временные ссылки автоматически очищаются в Python?

Это в основном вопрос о времени жизни временных. Если функция возвращает объект, но ссылка не назначена переменной и используется только для вызова метода в возвращенном объекте, автоматически очищается временная ссылка? Чтобы привести конкретный пр…
3 ответа

Как выдать пустой генератор?

У меня есть метод, который берет генератор плюс некоторые дополнительные параметры и выдает новый генератор: function merge(\Generator $carry, array $additional) { foreach ( $carry as $item ) { yield $item; } foreach ( $additional as $item ) { yield…
21 авг '14 в 14:12
5 ответов

Почему (void) 0 нет операций в C и C++?

Я видел debug printfs в glibc, который внутренне определяется как (void) 0, если NDEBUG определен. Аналогично __noop для Visual C++ компилятор тоже есть. Первый работает на компиляторах GCC и VC++, а второй - только на VC++. Теперь мы все знаем, что…
04 фев '10 в 10:38
4 ответа

Когда я должен использовать @classmethod и когда метод def (self)?

При интеграции приложения Django, которое я раньше не использовал, я нашел два разных способа определения функций в классах. Автор, кажется, использует их оба преднамеренно. Первый, который я сам часто использую: class Dummy(object): def some_functi…
3 ответа

Когда происходит присвоение по ссылке в MATLAB?

Это вопрос о языке MATLAB. Я изучаю учебник MathWorks "Onramp" и заметил странное поведение "назначение по ссылке" (из-за отсутствия лучшего термина), которое противоречит моим ожиданиям. v1 = [4 6 1 3 4 9 5]; Я думаю, что в приведенном ниже примере…
1 ответ

Как написать абстрактный конструктор класса, чтобы он был гибким для расширения в подклассах

Я пытаюсь реализовать постоянный Stack структура данных. Я хочу реализовать это как алгебраический тип данных, поэтому он имеет два конкретных подтипа: пустой и непустой: abstract class Stack<T> { factory Stack.empty() => const _EmptyStack.…
2 ответа

Как символ '@' правильно маркируется в синтаксическом анализаторе языка Java?

Я работаю над анализатором исходного кода Java, следуя лексическим и синтаксическим спецификациям. Я застрял на аннотации, хотя; соответствующие правила: Annotation: @ QualifiedIdentifier [ ( [AnnotationElement] ) ] AnnotationTypeDeclaration: @ inte…
16 ноя '12 в 14:20
5 ответов

Почему я не могу создать массив универсального типа?

Короче говоря, это не скомпилируется: public <A> void test() { A[] temp = new A[]{}; } Это из-за проблем с обратной совместимостью или что-то фундаментальное в языковой структуре, которое этому мешает?
25 июл '12 в 12:26
5 ответов

Диапазон для целочисленных значений символов в C++

Я читаю язык программирования C++, и в нем Страуструп утверждает, что значение int для символа может варьироваться от 0 до 255 или от -127 до 127, в зависимости от реализации. Это правильно? Похоже, что это должно быть от -128 до 127. Если нет, то п…