Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
3 / 4 / 1
Регистрация: 13.07.2011
Сообщений: 313

Какой тип должен быть у функции?

11.03.2012, 17:53. Показов 3658. Ответов 29
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Сделал ф-цию, которая считывает файла и записывает результат работы с данными в vector.
решил проверить, что хранит векотор, сделал ф-цию вывода и, как выяснилось - они пустые..
какой должен быть тип ф-ции, чтобы он возвращал вектор?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.03.2012, 17:53
Ответы с готовыми решениями:

Как определять какой метод должен быть статическим, а какой нет?
Quer::add_line_to_vec: недопустимый вызов нестатической функции-члена

Почему у функции main() тип int? Почему не может быть какой-то другой, например, char?
Схема, касательно возвращаемого значения понятна. Не понятно почему именно целочисленное. Хелп)

Какой алгоритм должен быть у формулы?
Здравствуйте! Пробую решать задачи по основам программирования и алгоритмизации по учебнику. На первой картинке задача, на второй моё...

29
Модератор
Эксперт по электронике
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
11.03.2012, 22:44
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от hello19 Посмотреть сообщение
а можно пример увидеть...
ты б сначала свою функцию показал
0
3 / 4 / 1
Регистрация: 13.07.2011
Сообщений: 313
11.03.2012, 22:47  [ТС]
да какая разница...
C++
1
2
3
4
5
6
7
8
// FileName - откуда считываю данные
// coord,value - те самые два массивчика
<тип функции> function_1 (const string &FileName, vector<int> coord, vector<double> value )
{
// тело ф-ции
//....
//...
}
на выходе нужно просто иметь 2 этих массива...
0
Модератор
Эксперт по электронике
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
11.03.2012, 22:53
по первому
как то так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
struct stVector
{
vector<int> a;
vector<double> b;
}
 
stVector fnc()
{
stVector tmp;
tmp.a.....// заполняем 
tmp.b.....// заполняем 
return tmp;
}
по второму тебе показал ForEveR,
C++
1
void foo(std::vector<int>& first, std::vector<double>& second);
по третьему
объяви глобально
vector<int> a;
vector<double> b;
и заполняй их в функции
а вообще я бы сделал класс
где вектора члены класса
а чтение метод
0
3 / 4 / 1
Регистрация: 13.07.2011
Сообщений: 313
11.03.2012, 23:00  [ТС]
в том коде, что ты написал вектора возвращаемые ф-цией идут ведь как независимые, так?
0
Модератор
Эксперт по электронике
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
11.03.2012, 23:07
Цитата Сообщение от hello19 Посмотреть сообщение
вектора возвращаемые ф-цией идут ведь как независимые,
независимые от чего???
если типа 5 интов и 2 дубля то да
но вообще подумай про класс( это следующий шаг от структуры)
0
3 / 4 / 1
Регистрация: 13.07.2011
Сообщений: 313
11.03.2012, 23:08  [ТС]
ну вообщем понял, спасибо.
насчет класса - что-то мне кажется это не нужно.. да и потом я не настолько гуру плюсов)
0
Модератор
Эксперт по электронике
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,876
11.03.2012, 23:27
Цитата Сообщение от hello19 Посмотреть сообщение
да и потом я не настолько гуру плюсов
А векторы используем
насчет класса
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class MyClass
{
public:
vector<int> a;
vector<double> b;
 
void fncRead(char* NameFile);
};
void MyClass::fncRead(char* NameFile)
{
a.....// заполняем 
b.....// заполняем 
}
 
int Main()
{
MyClass cls1;   // создаем объект
cls1.fncRead("lalala"); // считываем файл
cls1.a   // доступ к первому вектору
cls1.b  // доступ ко второму
}
Преимущества
можешь создать несколько экземпляров
и считывать разные файлы потом например их сравнить
если переопределить операторы то можно складывать вычитать копировать
добавь в методы свои функции обработки ты ведь не только считывать собираешься
запись например

повозишся с классом зато потом в майне вообше ничего делать не надо создавай объект и вперед
0
3 / 4 / 1
Регистрация: 13.07.2011
Сообщений: 313
12.03.2012, 00:05  [ТС]
ой чет сложно... ладно, буду разбираться, спасибо)
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
12.03.2012, 12:02
Функция может возвращать значения через параметры любых типов не зависимо от типа самой функции. Сама функция даже может быть void, это не мешает присваивать параметры. Но переменные параметры нельзя передавать по значению, а только по указателю, или по ссылке.
0
3 / 4 / 1
Регистрация: 13.07.2011
Сообщений: 313
12.03.2012, 17:56  [ТС]
Цитата Сообщение от ValeryS Посмотреть сообщение
по первому
как то так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
struct stVector
{
vector<int> a;
vector<double> b;
}
 
stVector fnc()
{
stVector tmp;
tmp.a.....// заполняем 
tmp.b.....// заполняем 
return tmp;
}
по второму тебе показал ForEveR,
C++
1
void foo(std::vector<int>& first, std::vector<double>& second);
по третьему
объяви глобально
vector<int> a;
vector<double> b;
и заполняй их в функции
а вообще я бы сделал класс
где вектора члены класса
а чтение метод
Вообще, мне кажется, что есть смысл передавать векторы по ссылке, т.к. потом я буду работать с довольно большими объемами информации и нет смысла их туда-сюда копировать...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.03.2012, 17:56

Какой должен быть прототип у оператора копирующего присваивания?
Какой должен быть прототип у оператора копирующего присваивания?

Какой тип должен быть у массива цветов?
каким типом должен быть массив цветов? Color myColor{Color.Aqua,Color.Pink,Color.Yellow};

Как в поле таблицы сохранить файл документ какой тип данных должен быть и как преобразовать на C#
Необходимо сохранить файл в базу данных на C# ПОдскажите как это сделать)) Заранее спасибо!!!

Какой должен быть ТИЦ, чтобы быть на 1-2 странице поиска по распространенным ключевым словам
Google приводит на мой сайт примерно в 10 раз больше посетителей, чем Яндекс. Нарушаются все правила, согласно которым Яндекс контролирует...

Как в IIS 5 должен быть зарегистрирован тип .dl ?!
Вместо выполнения функций из DLL-ей они (dll-и)норовят сами скачаться :(. В зарегистрированных типах что-то про download и не одного...


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

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
Новые блоги и статьи
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2. Задача: Обеспечить запись документа в регистр сведений независимо от. . .
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется. Ну как вам?
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru