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

Как слова с входного потока помещать в вектор, который является членом структуры?

25.03.2016, 14:07. Показов 733. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не могу понять, как слова с входного потока помещать в вектор, который является членом структуры. Автор говорит что надо вот такую функцию сделать, я пытался, но так и не понял самой стратегии и алгоритма построения подобного и вообще куча ошибок, кто посмотрит и скажет что да как?
func.cpp
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <string>
#include <vector>
#include "structure.h"
 
using std::cin; using std::string;
using std::vector; using std::istream;
//Считывание входного потока и запись входных данных в структуру Words_Info
istream& recieve(istream& in, vector<Words_Info>& vcwrd){
 if (in){
     vcwrd.clear();
     
     string words_into;
     while (in >> words_into)
         vcwrd.push_back(words_into);
     
     in.clear();
 }
 return in;
}
//*********************************************************************************************************

structure.h
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#ifndef GUARD_structure
#define GUARD_sctructure
 
//Создаем структуру с членом-вектором
struct Words_Info{
std::vector<std::string> vectorwords;
};
//***********************************
 
//Объявляем функцию******************************
std::istream& recieve(std::istream&, std::vector<Words_Info>&);
//***********************************************
#endif

Вопрос какие аргументы передавать таким функциям кроме входного потока cin?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.03.2016, 14:07
Ответы с готовыми решениями:

Как задать размер массива, который является членом класса, через конструктор?
Почему так? И как же тогда задать размер этого массива? class Test { public: Test(int size) : arrSize(size){}; private: ...

Java & Flash.Сервек, который считывает из входного потока информацию и потом обрабатывает как XML
Вот написал небольшой сервек который считывает из входного потока информацию и потом обрабатывает как XML. Если посылать инфу через telnet...

Слова входного потока
Вывести самые длинные слова входного потока! если во вх потоке самое длинное слово одно,то программа должна вывести одно слово,а если...

5
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
25.03.2016, 14:26
Цитата Сообщение от Slide Посмотреть сообщение
Не могу понять, как слова с входного потока помещать в вектор, который является членом структуры.
vector<Words_Info> это, внезапно, вектор структур, а не вектор входящий в эту структуру. И вообще, функцию надо делать методом класса, а не внешней функцией.
C++
1
2
3
4
5
6
7
8
9
struct Words_Info{
    istream& recieve(istream& in);
 
    std::vector<std::string> vectorwords;
};
istream& Words_Info::recieve(istream& in)
{
    //сюды код функции
}
0
1 / 1 / 1
Регистрация: 21.11.2015
Сообщений: 20
25.03.2016, 15:45  [ТС]
Такой ответ мне тоже не подходит, т.к. просто как бы я по мере изучения еще не знаю "метода класса", но с вектором подумал что структура это тип, поэтому вектор vector<Words_info> может существовать, в книге такое есть, но я так сказать не понял. Но будет ли работать к примеру второй параметр моей функции как ...(..., Words_info& x){
...x.vectorwords;...} Как бы взяв вектор как член структуры, если такое и возможно, то что надо передавать функции в качестве второго аргумента?
0
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
25.03.2016, 15:47
Цитата Сообщение от Slide Посмотреть сообщение
Но будет ли работать к примеру второй параметр моей функции как ...(..., Words_info& x){
...x.vectorwords;...} Как бы взяв вектор как член структуры, если такое и возможно, то что надо передавать функции в качестве второго аргумента?
Работать будет. В таком случае вторым аргументом надо передавать структуру.
0
1 / 1 / 1
Регистрация: 21.11.2015
Сообщений: 20
25.03.2016, 16:12  [ТС]
что? это как просто вызвать recieve(cin, Words_info)?
0
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
25.03.2016, 16:14
Цитата Сообщение от Slide Посмотреть сообщение
что? это как просто вызвать recieve(cin, Words_info)?
C++
1
2
Words_info arg;
recieve(cin,arg);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.03.2016, 16:14
Помогаю со студенческими работами здесь

Считать строку в массив символов, который является членом класса
гетлайны, гетси, манипуляторы ws не работают (не могу заставить) #include &lt;iostream&gt; using namespace std; class employee { ...

НАДО установить сетевой принтер к компу, который не является членом домена
Нужно установить сетевой принтер, подключенный к компьютеру, который является членом домена Active Directory. Но! принтер нужно установить...

Вывести все слова входного потока в порядке увеличения их длины
Здравствуйте . Задание: Вывести все слова входного потока в порядке увеличения их длины . Надеюсь на вашу помощь. Задание желательно...

Вывести все слова входного потока, которые оканчиваются заданным символом
прога в турбо си.. очень надо! пожалуйста помогите

Все слова из входного потока поместить в выходной поток с новой строки
Здравствуйте уважаемые программисты помогите пожалуйста текст задачи: все слова из входного потока, помещать в выходной поток с новой...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru