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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.06.2010, 21:44   #1
psihadelic
Пользователь
 
Регистрация: 17.11.2009
Сообщений: 26
По умолчанию Сопоставимы ли массивы (вектора) с файловым В/В на С++?

Здравствуйте!

Делал курсовую работу (делаю), уже почти всё написал, но оказалось, что ввод/вывод должен быть файловым. Как переделать то, что уже написано ума не приложу, поэтому хочу проконсультироваться на форуме насчет того, можно ли вообще использовать массивы (вектора) при файловом В/В ?

Выложу небольшой кусочек кода, где покажу, как реализованы эти массивы:

Код:
class worker  // класс робітник 
{
public:
	deque <project> ProjectsWorker; //Проекти, в яких приймав участь робітник ( останні 5 проектів) МАССИВ, ОСТАННІ 5
	position PositionOccupied; // Посада яку займає робітник Об’єкт типу «посада»
	string Name; // ім"я робітника
	string Surname; // прізвище робітника
	int AccountNumberWage; // Номер рахунку заробітної плати
	string WorkerUnit;//Підрозділ, де працює робітник;
	double Seniority; // Трудовий стаж робітника
};
Код:
worker metod::InitW(worker _objW)
{
    string bufString;
    int bufInt;
    double bufDouble;

	system("cls");

	cout << "Add a post working under number \n"; // Добавить должность рабочему, если её нет, то добавить её.
	if(MasPosition.empty())
	{
		do
		{
			system("cls");
			cout << "First, you need to add at least one post \n";
			cout << "1) Add position \n";
			cout << "2) Back \n";
			cin >> bufInt;
			switch(bufInt)
			{
				case 1:
				{
					//static metod obj;
					AddPosition();
				}
					break;

				default:
					break;
			}
		}
		while(bufInt =! 2);
	}
	else
	{
		for(int i = 0; i < MasPosition.size(); ++i)
		{
			cout << i+1 << ") " << MasPosition[i].TitlePosition << "\n" << endl;
		}
		int num;
		cin >> num;
		_objW.PositionOccupied = MasPosition[num-1];
		cout << "Position worker added \n" << endl;
		UntilKeypressed();
	}

	cout << "Add Projects working under the number \n"; // Добавить должность рабочему, если её нет, то добавить её.
	if(MasProject.empty())
	{
		do
		{
			system("cls");
			cout << "You have no projects to add a project? \n";
			cout << "1) Add project \n";
			cout << "2) Back \n";
			cin >> bufInt;
			switch(bufInt)
			{
				case 1:
				{
					//static metod obj;
					AddProject();
				}
					break;

				default:
					break;
			}
		}
		while(bufInt =! 2);
	}
	else
	{
		for(int i = 0; i < MasProject.size(); ++i)
		{
			cout << i+1 << ") " << MasProject[i].TitleProject << "\n" << endl;
		}
		int num;
		cin >> num;
		if(_objW.ProjectsWorker.size() < 5)
		{
			_objW.ProjectsWorker.push_front(MasProject[num-1]);
			cout << "Position worker added \n" << endl;
			UntilKeypressed();
		}
		else
		{	
			_objW.ProjectsWorker.push_front(MasProject[num-1]);
			_objW.ProjectsWorker.pop_back();
			cout << "Position worker added \n" << endl;
			UntilKeypressed();
		}
	}

    cout<<"Add name \n";
    cin >> bufString; // ім"я робітника
    _objW.Name = bufString;

    cout<<"Add surname \n";

    cin >> bufString; // прізвище робітника
    _objW.Surname = bufString;

    cout<<"Add the account number \n";
    cin >> bufInt; // Номер рахунку заробітної плати
    _objW.AccountNumberWage = bufInt;

    cout<<"Add record \n";
    cin >> bufDouble; // Трудовий стаж робітника
    _objW.Seniority = bufDouble;

	return _objW;
};

void metod::AddWorker() //Можливість додавати робітників
{
	worker _objWorkerN;
	_objWorkerN = InitW(_objWorkerN);
	MasWorker.push_back(_objWorkerN);
	cout << "Workera dodano \n";
	UntilKeypressed();
};
psihadelic вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получение вектора PastoriXx Общие вопросы .NET 0 14.05.2010 19:52
элементы вектора realabs Общие вопросы C/C++ 7 03.10.2009 17:21
работа с файловым вводом выводом... world12_tk Общие вопросы C/C++ 1 13.03.2009 16:31