Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.08.2011, 23:18   #1
Form_13
Форумчанин
 
Регистрация: 25.04.2011
Сообщений: 107
Печаль Перечисление внутри структуры

Запихнул внутрь структуры перечесление. Вот код:

Код:
#include <iostream>
using namespace std;

enum etupe {laborer,secretary,manager,accountant,executive,researcher};

struct date
 { 
	 int day;
	 int month;
	 int year;
 };

struct employee
{ int number;
  float cost;
  etupe work;
  date date_work;  
};

int main()
{
	setlocale(0,"Rus");
	employee bam;
	char ch;

	cout <<"Введите должность работника: "; 
           cin >> bam.work;     
           return 0;
}
И вот при компиляции он орёт на "cin >> bam.work;" и говорит: "Отсуствует оператор ">>" соответствующий этим операндам. Разве нельзя ввести с клавиатуры значение перечисляемого типа? И если нет, получается единственный способ, это вводить цифровое значение и по нему уже вытаскивать соответствующее ему а перечисляемом?
Form_13 вне форума Ответить с цитированием
Старый 01.08.2011, 23:30   #2
Zer0
Форумчанин
 
Аватар для Zer0
 
Регистрация: 13.12.2007
Сообщений: 788
По умолчанию

как более удобный вариант - перегрузить оператор ">>"
благодарность - сюда (не забываем писать от кого)
Zer0 вне форума Ответить с цитированием
Старый 01.08.2011, 23:34   #3
MooNDeaR
В стагнации
Участник клуба
 
Аватар для MooNDeaR
 
Регистрация: 29.07.2011
Сообщений: 1,303
По умолчанию

Цитата:
Сообщение от Zer0 Посмотреть сообщение
как более удобный вариант - перегрузить оператор ">>"
А перегружать операции для структур можно?
E-mail: pashaworking@gmail.com | ICQ: 479914426 | Skype: moondearr
Понять, чего от тебя требует заказчик – это уже половина всей работы, а иногда и полностью выполненное задание.
MooNDeaR вне форума Ответить с цитированием
Старый 02.08.2011, 10:05   #4
artush1984
Форумчанин
 
Аватар для artush1984
 
Регистрация: 27.04.2009
Сообщений: 184
По умолчанию

Да можно. Структура от класса отличается только тем что по умолчанию члены структуры являются public членами а у класса private;
Hа C я могy пpосто делать ошибки, на C++ я могy их наследовать!
artush1984 вне форума Ответить с цитированием
Старый 02.08.2011, 10:49   #5
Form_13
Форумчанин
 
Регистрация: 25.04.2011
Сообщений: 107
По умолчанию

А зачем перегружать? Он не работает, потому что и не должен так работать?
Form_13 вне форума Ответить с цитированием
Старый 02.08.2011, 10:57   #6
MooNDeaR
В стагнации
Участник клуба
 
Аватар для MooNDeaR
 
Регистрация: 29.07.2011
Сообщений: 1,303
По умолчанию

Цитата:
Сообщение от Form_13 Посмотреть сообщение
А зачем перегружать? Он не работает, потому что и не должен так работать?
Перегрузив операцию можно заставить её работать т.к. тебе надо.
К сожалению, я еще не совсем разобрался с механизмом перегрузки, поэтому кода предложить не могу..

И если честно, вообще не понимаю как можно перегрузить ">>", чтобы вводить текст, а сравнивать с числом?
E-mail: pashaworking@gmail.com | ICQ: 479914426 | Skype: moondearr
Понять, чего от тебя требует заказчик – это уже половина всей работы, а иногда и полностью выполненное задание.

Последний раз редактировалось MooNDeaR; 02.08.2011 в 11:10.
MooNDeaR вне форума Ответить с цитированием
Старый 02.08.2011, 13:38   #7
skgwazap
Пользователь
 
Регистрация: 24.11.2010
Сообщений: 40
По умолчанию

enum etupe {0=laborer,1=secretary,2=manager,3= accountant,4=executive,5=researcher };
Попробуйте так.
skgwazap вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нахождение слов-анаграмм, Ошибка выдается. Задание внутри. Код внутри. TYMON Общие вопросы .NET 2 22.11.2010 21:07
массив внутри структуры Dimarik Общие вопросы .NET 5 09.05.2010 07:31
Heap Corruption при попытке перевыделить память под массив внутри структуры Farrel Общие вопросы C/C++ 1 21.04.2010 00:45
Перечисление юзеров doniyor Работа с сетью в Delphi 5 24.01.2010 23:24
Перечисление компонентов Zeraim Свободное общение 5 30.11.2008 20:20