169 похожих чатов

Всем привет! Когда нужно использовать reference или pointer в коде

на C++?

Я понимаю что pointer это просто ссылка на участок в памяти, но какая разница между reference и pointer, если const & по факту тот же самый pointer?

10 ответов

11 просмотров

Силка це синтаксичиский сахар над указателем

eyepill 👁️-Mon Автор вопроса
Arturio
Силка це синтаксичиский сахар над указателем

А какие возможности он дает и разница между указателями?

eyepill 👁️ Mon
А какие возможности он дает и разница между указат...

https://ru.stackoverflow.com/questions/349/Чем-отличаются-ссылки-от-указателей-в-С

eyepill 👁️-Mon Автор вопроса

Получается нельзя изменить значение переменной с помощью указателя? Есть ли различия в скорости чтения указателя и ссылки? В чем разница: int sum(int a, int b) И int sum(int& a, int& b)

eyepill 👁️ Mon
Получается нельзя изменить значение переменной с п...

В тому що в другому випадку ти зможеш модифікувати зміні які передані в функцію #include <iostream> void add(int& a); void addNotRef(int b); int main() { int a = 2; int b = 2; add(a); std::cout << a; // 7 addNotRef(b); std::cout << b; // 2 } void add(int& a) { a += 5; } void addNotRef(int b) { b += 5; }

eyepill 👁️-Mon Автор вопроса
Arturio
В тому що в другому випадку ти зможеш модифікувати...

А если сделать так: void add(const int& a) То какая разница между ними?

eyepill 👁️ Mon
А если сделать так: void add(const int& a) То ка...

#include <iostream> void add(const int& a); void addNotRef(int b); int main() { int a = 2; int b = 2; add(a); std::cout << a; // 7 addNotRef(b); std::cout << b; // 2 } void add(const int& a) { a += 5; } //ERROR: выражение должно быть допустимым для изменения левосторонним значением void addNotRef(int b) { b += 5; }

eyepill 👁️-Mon Автор вопроса
Arturio
#include <iostream> void add(const int& a); void a...

Но что тогда является более производительным? Const int& a или int b?

eyepill 👁️-Mon Автор вопроса
Arturio
#include <iostream> void add(const int& a); void a...

И можно ли изменять значение переменной через указатель?

eyepill 👁️ Mon
И можно ли изменять значение переменной через указ...

Если int const * const ptr - то нельзя ни указатель, ни значение. Если int * const ptr - указатель нельзя, значение можно.

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

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

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
83
читать файл максимально быстро? странный вопрос))
zamtmn
53
How to create an OS in C? what to study?
Linus
18
Всем доброго вечера! Хочу поделиться своим злоключением с человеком, который, как оказалось сюда тоже скидывал свое резюме. Жаль, что я вашу группу не нашел раньше… человек ки...
Роман Ахмедзянов
4
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
Компания Elif ищет менеджера проектов, который будет заниматься поиском и ведением новых проектов. Прежде чем приступить к работе, вам нужно пройти наш недельный курс, где вы ...
Elif
5
Привет, кто может сделать юзербота с апи? Задачи: - создавать группы - создавать каналы - задавать для созданных каналов аватарку или эмоджи, имя группы - добавлять в группы...
Lencore
11
Вопрос вроде правильно, но что надо сделать, чтоб текст был виден нормально ? ghci> TE.decodeUtf8 $ TE.encodeUtf8 "test - проба" "test - \1087\1088\1086\1073\1072"
Fedor
7
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
@HemulGM Параметры у AddStream поменялись? Несостыковка какая-то
Катерина Свиридова
12
Карта сайта