Вопросы с тегом «operators»

Что касается языков программирования, операторы - это конструкции, которые обычно ведут себя как функции, но синтаксически или семантически отличаются от обычных функций. Из Википедии: http://en.wikipedia.org/wiki/Operator_%28programming%29

3
Должны ли обертки сравниваться как равные с использованием оператора ==, когда они переносят один и тот же объект?
Я пишу оболочку для элементов XML, которая позволяет разработчику легко анализировать атрибуты из XML. Оболочка не имеет никакого состояния, кроме объекта, который оборачивается. Я рассматриваю следующую реализацию (упрощенную для этого примера), которая включает перегрузку для ==оператора. class XmlWrapper { protected readonly XElement _element; public XmlWrapper(XElement element) { _element = element; …
19 c#  .net  operators 

15
Для чего нужны битовые операторы? [закрыто]
Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 5 лет назад . Языки программирования часто поставляются с различными битовыми операторами (например, битовое смещение влево …

6
Каковы преимущества использования побитовых операций? [закрыто]
Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 5 лет назад . Прочитав последнюю рассылку CodeProject, я наткнулся на эту статью о побитовых операциях …

3
Почему оператор стрелки в C ++ не является псевдонимом *.?
В c ++ оператор * может быть перегружен, например, с помощью итератора, но оператор стрелки (->) (. *) Не работает с классами, которые перегружают оператор *. Я полагаю, что препроцессор может легко заменить все экземпляры -> на (* left) .right, и это сделает итераторы более привлекательными для реализации. Есть ли …
18 c++  operators 

2
Побитовое ИЛИ против добавления флагов
Я видел, как другие использовали Bitwise-OR для объединения флагов раньше: #define RUN 0x01 #define JUMP 0x02 #define SHOOT 0x04 const byte madPerson = RUN | JUMP | SHOOT; Я тоже так делаю. Но я также видел некоторые (не так много) флаги объединения, используя сложение: #define RUN 0x01 #define JUMP 0x02 …
16 c++  operators 

2
Когда мне следует использовать оператор неявного преобразования типов в C #?
В C # мы можем перегрузить оператор неявного преобразования следующим образом (пример из MSDN ): struct Digit { /* ... */ public static implicit operator byte(Digit d) // implicit digit to byte conversion operator { /* ... */ } } Таким образом, мы можем иметь тип, пользовательский тип значения , …
14 c#  operators 

7
Операторы понятнее, чем ключевые слова или функции? [закрыто]
В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, вновь открыть, обратитесь за …

3
Насколько полезны инфиксные операторы в языке программирования?
Насколько полезны инфиксные операторы в языке программирования? Стоят ли они дополнительной сложности, которую они предоставляют? Можете ли вы привести примеры, когда инфиксные операторы лучше подходят для задачи, которую нельзя решить, просто перегружая обычные операторы?

4
Создание нулевых объектов с помощью оператора нуль-слияния
Рассмотрим следующий типичный сценарий: if(myObject == null) { myObject = new myClass(); } Мне интересно, что думают о следующей замене с использованием оператора нуль-слияния: myObject = myObject ?? new myClass(); Я не уверен, должен ли я использовать вторую форму. Это кажется хорошим сокращением, но myObject = myObjectконструкция в начале кажется, …
12 c#  operators 

11
Примеры перегрузки операторов, которые имеют смысл [закрыто]
Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 4 года назад . Пока я изучал C #, я обнаружил, что C # поддерживает …
12 c#  .net  operators 

1
Почему невозможно перегрузить составной оператор присваивания в C #?
Название вводит в заблуждение, поэтому, пожалуйста, прочитайте весь вопрос :-) . Под «составного оператора присваивания» Я имею в виду конструкцию , как это op=, например +=. Оператор чистого присваивания ( =) не относится к моему вопросу. Под «почему» я имею в виду не мнение, а ресурс (книгу, статью и т. …

3
Скорости << >> умножения и деления
Вы можете использовать &lt;&lt;для умножения и &gt;&gt;деления чисел в Python, когда я их рассчитываю, я нахожу, используя способ двоичного сдвига, это в 10 раз быстрее, чем деление или умножение обычным способом. Почему используется &lt;&lt;и &gt;&gt;намного быстрее, чем *и /? Какие процессы за сценой происходят *и /так медленно?

2
Каково обоснование для оператора мощности Python, связывающего право?
Я пишу код для разбора строк математических выражений и заметил, что порядок, в котором цепочечные операторы вычисляются в Python, отличается от порядка в Excel. С http://docs.python.org/reference/expressions.html : «Таким образом, в непереносимой последовательности степенных и унарных операторов операторы оцениваются справа налево (это не ограничивает порядок вычисления для операндов): -1 * 2 …

4
Использование тернарного оператора PHP только с двумя аргументами
Недавно я просматривал часть своего кода и заметил, что в рассеянности я оставил структуру, подобную следующей: $guid = empty($subscription-&gt;guid) ? : $subscription-&gt;guid; Теперь, он не делал то, что предполагалось, и это неправильно , но, поскольку это свойство всегда установлено, теперь оно работало нормально, и с 5.3 не было синтаксической ошибки …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.