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

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

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

Как првильно организовывать передачу значений (переменных, векторов) между функциями класса? - C++

05.07.2012, 20:08. Просмотров 887. Ответов 1
Метки нет (Все метки)

Допустим есть класс. В классе есть одна публичная функция и две приватных. В публичной функции запускается сначала одна приватная, а затем вторая приватная. В первой приватной вычисляется, например, вектор. во второй этот вектор обрабатывается. Так вот как лучше выполнить передачу этого вектора из одной приватной функции в другую?
Мне известно два способа:
1) Объявить вектор внутри класса и пользоваться им, т.к он будет доступным для всех функций класса.
2) Передавать указатель вектора из одной функции в другую.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.07.2012, 20:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как првильно организовывать передачу значений (переменных, векторов) между функциями класса? (C++):

Передача значений переменных функциями - C++
Подскажите пожалуйста, как реализовать эту функцию с помощью указателя (а не ссылки). int clearstr(student& a) { delete a.pi; ...

Почему изменяется значение переменной между функциями класса? - C++
Почему-то изменяется значение переменной m(кол-во специальностей) в output_spec. Пробовал в других средах покомпилить, но m все равно...

Приём константных векторов класса, как аргументов в методе другого класса - C++
Есть такой класс: class Order { private: int numberOrder; map <string, int> catalogDish; double totalCost; public: ...

Как организовать передачу данных между объектами разных классов? - C++
Есть объект doc в нутрии него создается еще два объекта ui и engine, engine в свою очередь создает еще один объект obj. Вопрос, как из ui...

Как реализовать передачу функции ключа или не передачу - C++
Есть функция: bool LoadExclusion() { std::string filename = "Exclusion"; std::ifstream inFile (filename); //создать поток ...

Вызов функций класса Dictionary функциями дружественного класса - C++
Функции класса Tree используют функции дружественного класса Dictionary,но вылетают ошибки,не находятся определения функций класа...

1
DU
1484 / 1130 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
05.07.2012, 20:27 #2
и первый и второй способы корректны и их использование зависит от ситуации. пока что все говорит в пользу второго т.е. передаче по ссылке (по указателю в общем-то почти то же самое, но лучше всетаки по ссылке)
т.е. создается локальная переменная типа вектор. по ссылке отдается первой приватной функции, которая его заполняет, и по константной ссылке отдается уже второй приватной функции, которая использует этот заполненный вектор.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.07.2012, 20:27
Привет! Вот еще темы с ответами:

Абстракция данных. Как реализовать, на примере класса 2D векторов - C++
Собственно, я пытался разделить код методов и их объявления. Сам класс в файле Vector.h, а код методов в Vector.cpp. Когда весь код...

Как првильно работать с файлами? - C++
Если файла на диске еще не существует, то нужно создать новый и открыть его для для ввода/вывода А если уже он есть, то тогда просто...

Передача переменных между функциями - PHP
Здравствуйте! Вот есть код, который должен отправлять письмо с полученными методом $_POST данными: <html> <head> ...

Как организовать передачу данных между JS и Studio? - Программирование Android
JS лежит внутри asset/www/файл. Нужно чтоб ПЕРЕД загрузкой файлика в WebView в него передавались некие переменные. Еще бы уметь получать...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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