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

Передача объектов в функции и методы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ обобщенный класс для чисел http://www.cyberforum.ru/cpp-beginners/thread654181.html
Всем привет. Написал тип numb для целых и дробных чисел, но не смог написать перегрузку оператора << для вывода через cout. Вот что пишу в public области видимости прототип: friend ostream...
C++ Как найти систему методом гауса Здравствуйте может кто подсказать как используя метод гаусса найти решение системы А*у=b ______a(i,1)___a(i,2)__ a(i,3)__a(i,4)__a(i,5)__a(i,6)____b(i) a(1,j) | 0.1 | 0.3 | -0.5 | ... http://www.cyberforum.ru/cpp-beginners/thread654168.html
Задача на С++ про рост мальчика C++
Маленький Дима ежемесячно вырастает на 2 см, а у бабушки в чулане обустроена полочки с различными лакомствами - вареньем, джемом, повидлом. Акуратистка бабушка записывала высоту и следующий...
Вложенные циклы C++
Всем привет! Суть проблемы в следующем: вычисляется функция R, где внешний цикл по l, внутренний по w. Затем вычисляем функцию Beam+=fr*R*cos(t*w), здесь i-внешний, k-внутренний. Вот код: ...
C++ Передача данных по значению и по ссылке http://www.cyberforum.ru/cpp-beginners/thread654152.html
Всем привет! Помогите плз разобраться в передаче данных в качестве параметров функции. *var и &var в чем между ними разница, когда мы их передаем в качестве параметров функции? Заранее спс...
C++ Составить функцию, которая формирует новое число с обратным порядком цифр по отношению к исходному числу 1. Составить функцию с оператором return. 2. Преобразовать функцию к void-функции, составленную в рамках языка С. 3. Преобразовать функцию к void-функции, использующую возможно¬сти языка C++. ... подробнее

Показать сообщение отдельно
John Prick
801 / 734 / 145
Регистрация: 27.07.2012
Сообщений: 2,107
Завершенные тесты: 3
18.09.2012, 23:01
Смотря что и зачем надо передать.
Если с объектом внутри функции необходимо производить некоторые действия, то объект лучше передать по ссылке.
Если требуется передача копии объекта, то его передают по значению (вызывается конструктор копирования).
Если вызов конструктора копирования нежелателен (например, по соображениям эффективности), но никаких "модификаций" объекта внутри функции не требуется, можно передать объект по константной ссылке.
Если речь идёт о полиморфных классах, то функция, скорее всего, должна принимать указатель на базовый класс, а в неё передаются адреса объектов производных классов.

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