Похожие чаты

Hi there, Why is this valid ? void test(int & ref); test(10);

11 ответов

18 просмотров

it is not.. void test(int&){} void foo() { test(10); } clang outputs: <source>:3:5: error: no matching function for call to 'test' test(10); ^~~~ <source>:1:6: note: candidate function not viable: expects an lvalue for 1st argument void test(int&){} ^

It's not

John- Автор вопроса
John- Автор вопроса
Danya🔥
It's not

Mine, It is valid.

John
MSVC ?

MSVC (19.27) reports <source>(3): error C2664: 'void test(int &)': cannot convert argument 1 from 'int' to 'int &' <source>(1): note: see declaration of 'test' Compiler returned: 2

John
Me gcc.

Doesn't matter, still not valid GCC reports <source>: In function 'void foo()': <source>:3:10: error: cannot bind non-const lvalue reference of type 'int&' to an rvalue of type 'int' 3 | test(10); | ^~ <source>:1:11: note: initializing argument 1 of 'void test(int&)' 1 | void test(int&){} | ^~~~ Compiler returned: 1 For completeness sake, ICC reports <source>(3): error: initial value of reference to non-const must be an lvalue test(10); ^ compilation aborted for <source> (code 2) Compiler returned: 2

John- Автор вопроса
olli
Doesn't matter, still not valid GCC reports <sourc...

Wrong posting so sorry. Should be test(const int & i); test(10); Dont you think reference should be lvalue ?

John
Wrong posting so sorry. Should be test(const int &...

yes, that's fine. Why does it need to be an lvalue? Using a prvalue is fine and a const reference can exist to an xvalue. Another example of the same principle is passing a string literal to foo(const std::string&)

John- Автор вопроса
olli
yes, that's fine. Why does it need to be an lvalue...

I want to differ operation for constant and object (lvalue). Quite dont understand about prvalue and xvalue. Let me look at it. Anyway, Thanks.

John
I want to differ operation for constant and object...

Why do you want that? Why do you want a constant not to be considered a const reference? Otherwise you could look at rvalue references

Похожие вопросы

Обсуждают сегодня

Ready for some fun AND a chance to win TKO Tokens? Join us for exciting minigames in our Telegram group! 🕒 Don’t miss out—games start on today 25 October 2024, at 8 PM! Ge...
Milkyway | Tokocrypto
255
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
How about the project bro Likes the community not that active ?
🅿️abby_FX
19
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
How are we going bro about the Raids ??
🅿️abby_FX
13
Россия стала ввозить сливочное масло из ОАЭ. Просто ради любопытства взглянул на статистику и впечатлился. У арабов среднестатистическая корова дает около 42 литров молока в д...
Foxcool
2
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Карта сайта