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

Ступор в возврате указателей и ссылок - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Проверить, делиться ли нацело одно число на другое http://www.cyberforum.ru/cpp-beginners/thread1243016.html
Помогите пожалуйста!! Пользователь ввел два числа n и m. Проверить, делиться ли нацело одно число на другое.
C++ Морской бой: расставляется кораблей больше, чем положено Здравствуйте! Пишу игру "Морской бой" в консоли, и попалась одна неприятная ситуация. Есть функция заполнения поля случайными кораблями, т.е. в рандомные места (не обращайте внимание на... http://www.cyberforum.ru/cpp-beginners/thread1243013.html
Можно ли использовать эти два оператора typedef и new вместе? C++
Можно ли использовать эти два оператора typedef и new вместе? Есть такая штука: typedef FT_STATUS (*pFT_Open) (int, FT_HANDLE *); // тип данных "функция FT_OPEN" Могу ли я динамически создать...
Оцените код "Змейки" C++
Прошу добрых жителей форума оценить мою "Змейку". Посоветуйте на данном примере, как не следует писать и как лучше. Если есть конкретные замечания по коду, по возможности опишите, как следовало бы...
C++ Сравнивает ли значения функция srtcmp, если они введены русскими буквами? http://www.cyberforum.ru/cpp-beginners/thread1242982.html
Сравнивает ли значения функция srtcmp,если они введены русскими буквами?
C++ Пользователь ввел три целых числа, расположить эти числа в порядке убывания #include<iostream.h> main() { int a,b,c,max,min,aver; cout<<"enter a "; cin>>a; cout<<"enter b "; cin>>b; cout<<"enter c "; cin>>c; подробнее

Показать сообщение отдельно
gru74ik
Модератор
Эксперт CЭксперт С++
4189 / 1837 / 198
Регистрация: 20.02.2013
Сообщений: 4,976
Записей в блоге: 21
15.08.2014, 22:33
Тут понимание складывается, на мой взгляд, из нескольких нюансов:
  1. трактовка символа
    Кликните здесь для просмотра всего текста
    Так называемая перегрузка операторов (operator overloading).
    В некоторых случаях & трактуется как оператор взятия адреса (address-of operator), а в других, как ссылка (reference). Так же и символ * иногда трактуется операция умножения, а иногда как указатель.

  2. особенности синтаксиса (разные варианты записи)
    Кликните здесь для просмотра всего текста

    Дополнительную путаницу могут вносить разные варианты записи указателей и ссылок:
    C++
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    int *ptr;    // указатель на тип int - один из вариантов записи
    int* ptr;    // указатель на тип int - другой вариант записи
    int * ptr;   // указатель на тип int - третий вариант записи
     
    int var;           // переменная с именем "var" типа int
    int &refvar = var; // refvar - ссылка на переменную var
    // иначе говоря, задано альтернативное имя (refvar) для переменной var
    int& refvar = var;  // вариант записи
    int & refvar = var; // вариант записи
    Кроме того, новичка могут смущать названия классов из стандартной библиотеки. Например, такая запись может быть вполне понятной:
    C++
    1
    
    double &rdvar = dvar; // ссылка на переменную типа double
    а вот такое уже вгоняет в ступор:
    C++
    1
    
    ostream &stream // ссылка на объект типа ostream

  3. разные синонимы в терминологии
    Кликните здесь для просмотра всего текста

    Иногда то же самое, объяснённое другими словами способно как внести ясность, так и запутать. Например, мне при изучении темы указателей оказался более понятен термин операция взятия значения, чем разыменование. А в теме про функции обилие синонимов прототип (объявление), определение (реализация) поначалу только запутало.

  4. пошаговая проработка коротких и простых практических примеров
    Кликните здесь для просмотра всего текста

    Пишите код, разбирайте маленькие примеры. На первых порах пишите в своём коде пошаговые комментарии - вначале это здорово помогает уяснить, а что же происходит в коде и что же Вы делаете.

  5. объяснение одних и те же тем у разных авторов
    Кликните здесь для просмотра всего текста

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