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

Передача по указателю и по ссылке - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функция size() стандартного класса string http://www.cyberforum.ru/cpp-beginners/thread644816.html
Добрый день. При поптыке посчитать количество символов в введённой строке на латыне - отображает верный результат, а кириллицу читает неправильно. Компилятор GNU C++. В чём может быть дело и как...
C++ Странное объявление конструктора Всем привет! Читаю Дейтела и увидел вот такое объявление конструктора. class Exceptions: public runtime_error { public: Exceptions::Exceptions():runtime_error(" Error! "){} }; Непонятно... http://www.cyberforum.ru/cpp-beginners/thread644811.html
Как понимать предупреждение комилятора gcc "ISO C++ says that these are ambiguous." C++
предупреждение: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second: В строчке timeStr = QString("%1h %2m...
работа с памятью strtok C++
Подскажите где можно почитать прочитать о том как правильно использовать strtok с максимально простой терминологией и максимально подробно...просто как не печально хорошего и подробного описания я...
C++ Как динамически иницилизировать char * "статическими" данными? http://www.cyberforum.ru/cpp-beginners/thread644755.html
Можно с применением стандарта C++11, если что. Есть конструктор, который принимает параметр в виде char * и копирует его во внутреннее поле, но может в процессе работы урезать строку, но никак не...
C++ ошибка с циклами помогите найти ошибку #include<stdio.h> int main() { float i,k,c,g; с=5 g=1; for (i=0;i<10;i++){ for (k=i;k<с;k=g+1){ подробнее

Показать сообщение отдельно
Holsteng
47 / 10 / 3
Регистрация: 26.03.2012
Сообщений: 246

Передача по указателю и по ссылке - C++

31.08.2012, 10:31. Просмотров 1001. Ответов 8
Метки (Все метки)

Всем привет! Есть функция, в которую передается ссылка:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void Compare(int &p)
{
    
    int * str = p;// здесь ошибка нельзя конвертировать int в int *
// надо писать int * str = &p;
}
 
int main()
{
    int x = 5;
    Compare ( x );
    return 0;
}
Получается, что компилятор не передает ссылку, а что он тогда передает?

Но ведь я передал по ссылке? А вот так ошибки не будет
C++
1
2
3
4
5
void Compare()
{
    int a = 5;
    int * str = &a;// здесь ошибки нет, где справедливость?
}
Вот так тоже не будет ошибки

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void Compare(int *p)
{
    
    int * str = p;
 
}
 
int main()
{
    int x = 5;
    Compare ( &x );
    return 0;
}
Здесь компилятор передает адрес?

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