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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.04.2011, 22:35   #1
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию Класс в классе

Что-то не могу понять, даже гугл не помог.
Есть такой класс:
Код:
class employee
{
private:
	int number;
	float salary;
	etype type;
	class date
	{
		private:
			int day, month, year;
		public:
			date():  day(0), month(0), year(0)
			{}
			void showdate() const
			{
				cout << "date: " << day << "/" << month << "/" << year << endl;	
			}
				void setdate()
			{
				char dummychar;
				cout << "setdate: "; cin >> day >> dummychar >> month >> dummychar >> year;
			}
	};
public:
	employee():  number(0), salary(0.0)
	{}
	 
	void set()
	{
                  cout << "Enter number: "; cin >> number;
		cout << "Enter salary: "; cin >> salary;
	        setdate();
	}
};
В предпоследней (выделенной) строчке ессно ошибка. Как это сделать правильно?) (т.е. получить доступ к методу вложенного класса)

Задача (все, кроме даты, сделал):
Цитата:
Расширьте содержание класса employee из упражнения 4, включив в него
класс date и перечисление etype (см. упражнение 6 главы 4). Объект клас-
са date будет использоваться для хранения даты приема сотрудника на ра-
боту.
Перечисление будет использовано для хранения статуса сотрудника:
лаборант, секретарь, менеджер и т. д. Последние два поля данных должны
быть закрытыми в определении класса employee, как и номер и оклад сотруд-
ника. Вам будет необходимо разработать методы getemploy() и putemploy(),
предназначенные соответственно для ввода и отображения информации о
сотруднике. Возможно, при создании методов вам понадобится ветвление
switch для работы с перечисляемым типом etype. Напишите функцию main(),
которая попросит пользователя ввести данные о трех сотрудниках, а за-
тем выведет эти данные на экран.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 13.04.2011 в 22:40.
Alex11223 вне форума Ответить с цитированием
Старый 13.04.2011, 23:05   #2
Dayman
Форумчанин
 
Аватар для Dayman
 
Регистрация: 12.01.2011
Сообщений: 186
По умолчанию

date объявлен, но не определен.
Код:
date _date;
_date.setdate();
Lingua c++ non penis caninus est.
Dayman вне форума Ответить с цитированием
Старый 13.04.2011, 23:10   #3
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Вроде так и пытался сделать, но почему-то не получилось. Теперь все норм, спс
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка в классе Progsenya C# (си шарп) 6 02.04.2011 18:43
Описать класс-родитель и класс-потомок. Delphi 7 Andrew_M Помощь студентам 0 15.01.2011 14:42
конструктор в классе V@mpire Общие вопросы C/C++ 5 01.06.2010 02:04
константность в классе softrix Общие вопросы C/C++ 1 17.06.2008 00:21