11
ответов

Почему функции семантики перемещения записываются в виде ссылок на r-значение? [Дубликат]

Я не понимаю, почему стандарт теперь использует конструктор перемещения и оператор переадресации, который принимает аргументы r-value. Я знаю, что часто полезно использовать временные объекты в качестве аргументов для ...
вопрос задан: 2 April 2015 09:14
5
ответов

Привязка временного к lvalue ссылке

У меня есть следующая строка кода три () {возвращаются "три";} пусто видоизменяются (string& касательно) {}, международное основное () {видоизменяется (три ()); возвратитесь 0;} Вы видите, что я передаю три () для видоизменения...
вопрос задан: 28 August 2009 06:42
4
ответа

Ссылочная инициализация в C++

Кто-либо может объяснить мне, почему существует различие между этими двумя операторами? класс A {}; константа A& = ();//исправляют A& b = ();//неправильно Это говорит недопустимый...
вопрос задан: 17 March 2010 22:04
3
ответа

Получите адрес Объективного-c свойства (который является структурой C),

У меня есть класс Objective C, который содержит структуру C-стиля. Я должен вызвать функцию C передача указателя на этот элемент объекта (иначе свойство). Ни за что в жизни я не могу выяснить, как добраться...
вопрос задан: 6 February 2015 19:42
3
ответа

ПЕРЕХОДНЫЕ ПРИСТАВКИ, непереходные приставки, rvalue и lvalues

Кто-либо мог объяснить детали с точки зрения rvalues, lvalues, ПЕРЕХОДНЫХ ПРИСТАВОК и непереходных приставок причина, почему первое выражение, отмеченное ниже, не в порядке, в то время как второе выражение, отмеченное ниже, в порядке? В моем...
вопрос задан: 19 February 2010 02:54
3
ответа

Каково использование lvalue подпрограмм в Perl?

Я не понимаю то, что могло быть использованием lvalue подпрограмм? Что я не могу выполнить с нормальными подпрограммами? Вы могли отправить некоторые примеры? Спасибо
вопрос задан: 13 February 2009 07:20
2
ответа

C++ 0x rvalue ссылки - lvalues-rvalue привязка

Это - последующий вопрос C++ 0x rvalue ссылки и временные файлы В предыдущем вопросе, я спросил, как этот код должен работать: освободите f (станд. константы:: строка и);//менее эффективная пустота f (станд.::...
вопрос задан: 23 May 2017 11:48
2
ответа

Почему C++ 0x rvalue ссылка не значение по умолчанию?

Одной из прохладных новых возможностей предстоящего стандарта C++, C++ 0x, являются "rvalue ссылки". rvalue ссылка подобна lvalue (нормальная) ссылка, за исключением того, что это может быть связано с временным файлом...
вопрос задан: 1 October 2011 13:50
2
ответа

"РАЗВЕ" “LValue” не означает то, что я думаю, что это означает?

В следующем коде: _imageView.hasHorizontalScroller = ДА; _imageView.hasVerticalScroller = ДА; _imageView.autohidesScrollers = ДА; NSLog ("полоса прокрутки? H %p V %p скрывают %p", и (...
вопрос задан: 14 January 2010 16:47
1
ответ

Где в Стандарте C++ делает он говорит:: удалите может изменить lvalues?

Я столкнулся со своим первым компилятором, который изменяется, lvalue передал:: удалите, но не обнуляйте lvalue. Это следующее, верно: Foo * p = новый Foo (); Foo * q = p; утверждайте (p! = 0); утверждайте (p...
вопрос задан: 23 May 2017 10:27
1
ответ

Являются ли строковые литералы и возвращаемые функцией значения lvalues ​​или rvalues?

Просто подумайте, является ли буквальная строка lvalue или rvalue. Являются ли другие литералы (например, int, float, char и т. Д.) Lvalue или rvalue? Является ли возвращаемое значение функции lvalue или rvalue? Как вы говорите ...
вопрос задан: 18 June 2015 13:55
0
ответов

Что такое динамический тип объекта

Я думаю, что динамический тип означает динамически выделяемый объект с использованием new. В следующем случае вы говорите, что p указывает на динамический или статический тип объекта? В стандарте не говорится о ...
вопрос задан: 30 June 2019 20:23
0
ответов

Есть ли способ иметь представление для чтения и записи в Range-v3?

В Range-v3 можно легко создать вид существующих контейнеров. Например, # include < range / v3 / view / transform.hpp > # Включают & л; cassert > int main () {std :: vector < double > v = {1,2,3}; ...
вопрос задан: 20 January 2019 06:45
0
ответов

Почему не работает a +++++ b?

int main () {int a = 5, b = 2; printf ("% d", a +++++ b); возврат 0; } Этот код дает следующую ошибку: error: lvalue требуется как операнд приращения Но если я помещаю пробелы в ++ + и ...
вопрос задан: 26 February 2018 14:21
0
ответов

Можно ли перегружать оператора CArchive < < для работы со std:: Последовательностью?

Я использую std:: Последовательностью в приложении MFC и хочу сохранить его в функции doc's Serialize (). Я не хочу хранить их как CString, потому что он пишет свои вещи там, и моя цель...
вопрос задан: 23 May 2017 12:33
0
ответов

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

Я знаю, что приведенный ниже код недопустим. Void doSomething (std :: string * s ) {} int main () {doSomething (& std :: string ("Hello World")); возврат 0; } Причина в том, что мы не ...
вопрос задан: 23 May 2017 12:25
0
ответов

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

Возможный дубликат :Является ли передача -значением -разумным значением по умолчанию в C++11? Я читаю Хочешь скорости? Пройти по значению. Дэйв Абрахамс об элизионном копировании и RVO. И мне интересно, зачем нам копия...
вопрос задан: 23 May 2017 12:15
0
ответов

Что касается преобразования lvalue в rvalue, когда оно необходимо?

Я читал довольно много в интернете и кажется, что многие люди упоминали следующие правила (но я не смог найти это в стандарте), Оператор сложения + (и все другие двоичные ...
вопрос задан: 23 May 2017 11:52
0
ответов

Expression must be a modifiable L-value

I have here char text[60]; Then I do in an if: if(number == 2) text = "awesome"; else text = "you fail"; and it always said expression must be a modifiable L-value.
вопрос задан: 15 February 2016 20:16
0
ответов

Correlation between specifier and qualifier?

const and volatile are called cv-qualifier by the C spec. What is exactly defference between specifier and qualifier (cv-qualifier)? Is a qualifier is a specifier as well? Is it necessarry that ...
вопрос задан: 29 July 2015 16:04
0
ответов

lvalue required as increment operand error

#include int main() { int i = 10; printf("%d\n", ++(-i)); // <-- Ошибка здесь } Что не так с ++(-i)? Пожалуйста, уточните.
вопрос задан: 24 August 2014 16:01
0
ответов

C ++ 0x const Ссылка RValue в качестве параметра функции

Я пытаюсь понять, зачем кому-то писать функцию, которая принимает Ссылка на const rvalue. В приведенном ниже примере кода для чего предназначена ссылочная функция const rvalue (возвращающая "3"). И ...
вопрос задан: 12 November 2012 02:12
0
ответов

Тип возврата '?:' (Тернарный условный оператор)

Почему первый возвращает ссылку? int x = 1; int y = 2; (х> у? х: у) = 100; А второго нет? int x = 1; длинный y = 2; (х> у? х: у) = 100; Фактически, второй не ...
вопрос задан: 24 September 2012 10:27
0
ответов

печать члена возвращенной структуры

У меня возникли проблемы с печатью члена структуры, возвращаемой из функции: #include структуры hex_string { char a[9]; }; структура hex_string to_hex_string_(беззнаковое x) { ...
вопрос задан: 1 November 2011 19:06
0
ответов

На каком языке появился термин lvalue? [закрыто]

Был ли C первым языком программирования, в котором использовался термин lvalue, или он появился еще раньше? Обратите внимание, что я не говорю об общей концепции «что-то в левой части задания ...
вопрос задан: 28 October 2011 14:59
0
ответов

Одна ошибка VS2010? Разрешить привязку неконстантной ссылки к rvalue БЕЗ ДАЖЕ предупреждения?

string foo () {return "hello"; } int main () {// ниже должно быть недопустимо для привязки неконстантной (lvalue) ссылки к строке rvalue & tem = foo (); // приведенное ниже должно быть правильным ...
вопрос задан: 25 August 2011 11:45
0
ответов

Почему myClassObj ++++ не вызывает ошибки компиляции: '++' требует l-значение, как и тип сборки?

Почему myint ++++ отлично компилируется с компилятором VS2008 и компилятором gcc 3.42 ?? Я ожидал, что компилятор скажет, что нужно lvalue, пример см. Ниже. struct MyInt {MyInt (int i): m_i (i) {} MyInt & ...
вопрос задан: 14 July 2011 10:51
0
ответов

Создание массива в классе C ++ и проблема изменяемого lvalue

I имеют базовый класс C ++. Заголовок выглядит так: #pragma once класс DataContainer { общедоступный: DataContainer (недействительный); ~ DataContainer (недействительно); int * getAgeGroup (недействительно); int _ageGroupArray [5] ...
вопрос задан: 11 July 2011 07:36
0
ответов

lvalue требуется в качестве левого операнда присваивания

Почему я получаю lvalue, требуемое как левый операнд присваивания при сравнении одной строки? Как я могу исправить это на C? if (strcmp ("hello", "hello") = 0) Спасибо!
вопрос задан: 28 May 2011 15:08
0
ответов

C ++: является ли возвращаемое значение L-значением?

Рассмотрим этот код: struct foo {int a; }; foo q () {foo f; fa = 4; возврат f;} int main () {фу я; ia = 5; q () = i; } Ни один компилятор не жалуется на это, даже Clang. Почему q () = ... строка ...
вопрос задан: 24 May 2011 14:26