Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Infernal92
0 / 0 / 0
Регистрация: 22.01.2014
Сообщений: 20
#1

Отличие int от int& - C++

22.01.2014, 17:08. Просмотров 1025. Ответов 10
Метки нет (Все метки)

Расскажите пожалуйста в чем отличие int от int&. Заранее спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.01.2014, 17:08     Отличие int от int&
Посмотрите здесь:

В чем отличие int &f( ) от int f( ) - C++
Что такое int & и чем отличается от int ? #include <iostream> using std::cout; using std::endl; int some(int i) { return...

Как передать 0 в функцию типа f (int, int&) - C++
Подскажите, почему при повторных вызовах f остается предыдущее значение S? Т.е. не обнуляется в теле f - {...s=0...} и как его обнулить?...

Ошибка: Cube::Cube(Cube &&)': cannot convert argument 1 from 'int' to 'int *[]' - C++
Не могу разобраться. Есть массив : int indices = { 1,2,3, 4,5,6 }; У класса конструктор: Cube(int indices);

//unresolved external symbol "void_cdecl fun1(int,int)" (&fun1@@YAXHH@Z) referenced in function_main - C++
создал проект, нужно ввести двумерный массив, потом создать функцию которая будет проверять есть ли в массиве хотя бы одна строка,...

невозможно преобразовать параметр 1 из "int" в "int *&" - C++
#include <iostream> using namespace std; void Func1(int *n) { cout << *n << " = " << *n << endl; } void Func2(int &n) ...

int\ volatile int \ const int - C++
Товарищи, паника! Имеется код: int a = 5; std::cout << "Init value a: " << a << "\n"; int *p; p = (int*) &a; *p = 0; ...

int &wordOffset - C++
int &wordOffset - я чето не пойму что это значит, как можно создать адрес?

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Модератор
Эксперт CЭксперт С++
6997 / 4168 / 594
Регистрация: 29.11.2010
Сообщений: 11,047
22.01.2014, 17:10     Отличие int от int& #2
int - тип данных int
int& - тип данных это ссылка на int
переменные, переданные по ссылке без const можно изменять (это как разыменованный указатель) и тогда будет меняться переданный объект.
когда мы меняем переменные, переданные по значению, то переданный объект не меняется, работа идет с его копией.
Тамика
Котовчанин
870 / 450 / 142
Регистрация: 16.02.2010
Сообщений: 2,899
Записей в блоге: 27
22.01.2014, 17:12     Отличие int от int& #3
Цитата Сообщение от Infernal92 Посмотреть сообщение
Расскажите пожалуйста в чем отличие int от int&. Заранее спасибо.
int - это целочисленный тип, а int& - это ссылка на тип int. То есть int& a; - a будет указателем на переменную типа int. Поправьте, если не права.
MrGluck
Модератор
Эксперт CЭксперт С++
6997 / 4168 / 594
Регистрация: 29.11.2010
Сообщений: 11,047
22.01.2014, 17:14     Отличие int от int& #4
Цитата Сообщение от Тамика Посмотреть сообщение
- a будет указателем на тип int.
*a будет указателем на тип int.
a будет ссылкой на переменную, имеющую тип int.
zss
Модератор
Эксперт С++
6284 / 5887 / 1908
Регистрация: 18.12.2011
Сообщений: 15,109
Завершенные тесты: 1
22.01.2014, 17:49     Отличие int от int& #5
Цитата Сообщение от MrGluck Посмотреть сообщение
*a будет указателем на тип int.
По моему,
&a будет указателем на тип int.
Тамика
Котовчанин
870 / 450 / 142
Регистрация: 16.02.2010
Сообщений: 2,899
Записей в блоге: 27
22.01.2014, 18:00     Отличие int от int& #6
Цитата Сообщение от MrGluck Посмотреть сообщение
*a будет указателем на тип int.
a будет ссылкой на переменную, имеющую тип int.
А разве *а - это не разыменовывание? Ну, то есть это ж "вытаскивание" значение переменной?
Ev[G]eN
Эксперт С++
5096 / 1534 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
22.01.2014, 18:05     Отличие int от int& #7
Цитата Сообщение от Тамика Посмотреть сообщение
А разве *а - это не разыменовывание?
ну Вы же изначально его объявляете как
C++
1
int *pointer;
или здесь Вы тоже что-то "вытаскиваете"?
Тамика
Котовчанин
870 / 450 / 142
Регистрация: 16.02.2010
Сообщений: 2,899
Записей в блоге: 27
22.01.2014, 18:06     Отличие int от int& #8
Цитата Сообщение от Ev[G]eN Посмотреть сообщение
ну Вы же изначально его объявляете как
C++
1
int *pointer;
или здесь Вы тоже что-то "вытаскиваете"?
Ну, при объявлении - да.
MrGluck
Модератор
Эксперт CЭксперт С++
6997 / 4168 / 594
Регистрация: 29.11.2010
Сообщений: 11,047
22.01.2014, 18:15     Отличие int от int& #9
Цитата Сообщение от zss Посмотреть сообщение
По моему,
&a будет указателем на тип int.
Верно, моя ошибка.
Правильнее даже сказать так:
&a будет указателем на переменную типа int. То бишь &a будет хранить адрес переменной, на которую ссылается a.
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
22.01.2014, 18:20     Отличие int от int& #10
C++
1
2
3
int i; // переменная типа int
int & ri = i; // ri - ссылка на переменную типа int
int * pi = &i; // pi - указатель на переменную типа int
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.01.2014, 18:40     Отличие int от int&
Еще ссылки по теме:

int * & func(); - C++
int * & func(); What is func? 1. A function that returns pointer to type "int&". 2. A function that returns reference to type...

Как заполнить один int пустой массив другим int массивом ? - C++
Можно пример кода :)

GetRandomInt( int min, int max ) или Генерация случайных чисел - C++
Это программа, генерирующая случайное имя и приветствие. Но вот почему-то, случайность выпадения чисел одинаковая при каждом включении...

Дано натуральное число N. Напишите функцию int NumberOfZeroes(int n) (C/C++/Java) - C++
Дано натуральное число N. Напишите функцию int NumberOfZeroes(int n) (C/C++/Java), function NumberOfZeroes(n: longint): integer (Pascal),...

Ошибка:unresolved external 'My<int>::My<int>(int)' unresolved external 'My<int>::~My<int>' - C++
есть 3 файла. файл inc.h: ... template &lt;class T&gt; class My { int m_size; T *m_data; public: My(int value); ~My(); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Chudakulli
1 / 1 / 0
Регистрация: 16.02.2013
Сообщений: 57
22.01.2014, 18:40     Отличие int от int& #11
C++
1
2
3
int i; // переменная типа int
int & ri = i; // ri - ссылка на переменную типа int
int * pi = &i; // pi - указатель на переменную типа int
Здесь ri - второе имя для переменной i (ссылка на i, её псевдоним)
Yandex
Объявления
22.01.2014, 18:40     Отличие int от int&
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru