Вопросы с тегом «assignment-operator»

3633
Почему Java + +, - =, * =, / = составные операторы присваивания не требуют приведения?

До сегодняшнего дня я думал что например i += j; Был просто ярлык для: i = i + j; Но если мы попробуем это: int i = 5; long j = 8; Тогда i = i + j;не скомпилирует но i += j;скомпилирует нормально. Значит ли это, что на самом деле i += j;это ярлык для чего-то подобного i = (type of i) (i +...

2003
Что такое идиома копирования и обмена?

Что это за идиома и когда ее следует использовать? Какие проблемы это решает? Меняется ли идиома при использовании C ++ 11? Хотя это упоминалось во многих местах, у нас не было ни единого вопроса и ответа «что это такое», так что вот оно. Вот частичный список мест, где это было упомянуто ранее:...

713
Чем отличаются операторы присваивания «=» и «<-» в R?

Каковы различия между операторами присваивания =и <-в R? Я знаю, что операторы немного отличаются, как показывает этот пример x <- y <- 5 x = y = 5 x = y <- 5 x <- y = 5 # Error in (x <- y) = 5 : could not find function "<-<-" Но единственная ли это разница?...

194
Понимание того, когда data.table является ссылкой на (против копии) другого data.table

У меня небольшие проблемы с пониманием свойств передачи по ссылке data.table. Некоторые операции, кажется, «ломают» ссылку, и я хотел бы точно понять, что происходит. При создании data.tableиз другого data.table(через <-, затем обновляя новую таблицу :=, исходная таблица также изменяется. Это...

127
Условия для автоматического создания оператора по умолчанию / копирования / перемещения и оператора присваивания копирования / перемещения?

Я хочу освежить свою память об условиях, при которых компилятор обычно автоматически генерирует конструктор по умолчанию, конструктор копирования и оператор присваивания. Я припоминаю, что были некоторые правила, но я не помню, а также не могу найти авторитетный ресурс в Интернете. Кто-нибудь может...

126
Переместить оператор присваивания и `if (this! = & Rhs)`

В операторе присваивания класса вам обычно нужно проверить, является ли назначаемый объект вызывающим объектом, чтобы не облажаться: Class& Class::operator=(const Class& rhs) { if (this != &rhs) { // do the assignment } return *this; } Вам нужно то же самое для оператора присваивания...

89
Ярлык оператора «или-присваивание» (| =) в Java

У меня есть длинный набор сравнений на Java, и я хотел бы знать, верны ли одно или несколько из них. Строка сравнений была длинной и сложной для чтения, поэтому я разбил ее для удобства чтения и автоматически перешел к использованию ярлыка оператора |=вместо negativeValue = negativeValue ||...

84
Какова мотивация присвоения Scala оценивать Unit, а не присвоенное значение?

Какова мотивация присвоения Scala оценивать Unit, а не присвоенное значение? Обычный шаблон в программировании ввода-вывода - это делать что-то вроде этого: while ((bytesRead = in.read(buffer)) != -1) { ... Но в Scala это невозможно, потому что ... bytesRead = in.read(buffer) .. возвращает Unit, а...

83
Почему в Java нет составных версий присваивания для операторов условного и и условного или? (&& =, || =)

Так что для бинарных операторов в булевых, Java имеет &, |, ^, &&и ||. Кратко подведем итоги того, чем они занимаются: JLS 15.22.2 Булевы логические операторы &, ^ и | JLS 15.23 Оператор условного И && JLS 15.24 Оператор условного ИЛИ || Для &результирующее значение...