Форум программистов, компьютерный форум CyberForum.ru

Ввод значения в функцию класса пользователем (с консоли) - C++

Восстановить пароль Регистрация
 
hoot
 Аватар для hoot
100 / 21 / 3
Регистрация: 10.11.2010
Сообщений: 193
20.07.2011, 01:23     Ввод значения в функцию класса пользователем (с консоли) #1
Все привет.
Столкнулся с проблемой.
К примеру есть класс:
C++
1
2
3
4
5
6
7
8
9
10
class Employee
{
private:
int age;
 
public:
    int GetAge() const;
    void SetAge(int itsAge);
 
};
Присвоения значения при написании программы, на подобии Employee.SetAge(5) c этим понятно.

Подскажите, как реализовать внесение значения пользователем с клавиатуры( в консольном приложении).

Заранее всем спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.07.2011, 01:23     Ввод значения в функцию класса пользователем (с консоли)
Посмотрите здесь:

Массив ( ввод массива пользователем ) C++
C++ Добавить ввод данных пользователем и все!
C++ передача значения переменной-члена из класса в функцию
C++ Ввод значения целочисленной переменной из консоли
C++ Ввод текста в консоли
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
20.07.2011, 01:27     Ввод значения в функцию класса пользователем (с консоли) #2
C++
1
2
3
4
5
6
7
#include <iostream>
//some code
std::cout << "Enter age: ";
int age;
std::cin >> age;
Employee obj; //создали объект класса Employee
obj.SetAge(age); //установили поле возраста в объекте(экземпляре) класса Employee
hoot
 Аватар для hoot
100 / 21 / 3
Регистрация: 10.11.2010
Сообщений: 193
20.07.2011, 01:29  [ТС]     Ввод значения в функцию класса пользователем (с консоли) #3
Спасибо.
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
20.07.2011, 01:34     Ввод значения в функцию класса пользователем (с консоли) #4
Employee obj; - создание объекта(экземпляра) класса Employee, тоесть сам класс является образцом по которому создаются объекты, объекты имеют одни и те же свойства(в данном случае возраст), но разные характеристики - сотрудников много и все они разных возрастов
hoot
 Аватар для hoot
100 / 21 / 3
Регистрация: 10.11.2010
Сообщений: 193
20.07.2011, 01:43  [ТС]     Ввод значения в функцию класса пользователем (с консоли) #5
Какой-то бред вывод подскажите, где я на факапил

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <iostream>
#include <conio.h>
 
using namespace std;
 
class Employee
{
private:
int age;
 
public:
    int GetAge();
    void SetAge(int itsAge);
 
};
 
void Employee::SetAge(int itsAge){itsAge=age;}
int Employee::GetAge(){return age;}
 
int main()
{
 setlocale(LC_ALL,"russian");
int itsAge;
 
 
cout<<"Введите возраст работника: ";
cin>>itsAge;
 
Employee Bill;
Bill.SetAge(itsAge);
cout<<"itsAge: "<<itsAge<<endl;//Проверка.
cout<<endl<<"Возраст: "<<Bill.GetAge();//Окончательный результат.
 
_getch();
return 0;
}
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
20.07.2011, 01:48     Ввод значения в функцию класса пользователем (с консоли) #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
 
class Employee {
    int age; 
public:
    int GetAge()
    {
        return age;
    }
 
    void SetAge(int age)
    {
        this->age = age;
    }
};
 
int main()
{
    std::locale::global(std::locale("")); //setlocale(LC_ALL,"russian");
    int itsAge;
    std::cout << "Введите возраст работника: ";
    std::cin >> itsAge;
    std::cin.ignore();
 
    Employee Bill;
    Bill.SetAge(itsAge);
    std::cout << "itsAge: " << itsAge//Проверка.
              << "\nВозраст: " << Bill.GetAge();//Окончательный результат.
 
    std::getchar();
    return 0;
}
hoot
 Аватар для hoot
100 / 21 / 3
Регистрация: 10.11.2010
Сообщений: 193
20.07.2011, 01:57  [ТС]     Ввод значения в функцию класса пользователем (с консоли) #7
Спасибо.
Можно тебя попросить добавить коменты к изменения.
Я изучаю, много вопросов.
Что означает:
1. std::cin.ignore();
Bash
1
С этим кажется разобрался. используется для приостановки программы?
2. this->
3. Это std::locale::global(std::locale("")); я так понимаю работает также как и setlocale(LC_ALL,"russian");, но обьясни как именно работает

Сорри за такие вопросы
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
20.07.2011, 02:05     Ввод значения в функцию класса пользователем (с консоли) #8
Цитата Сообщение от hoot Посмотреть сообщение
Я изучаю
правильно делайте - но не торопитесь и пытайтесь сами найти ответы на свои вопросы
1. почитать можно сдесь http://www.cplusplus.com/reference/i...stream/ignore/
но вы попробуйте закоментировать эту строку и посмотреть на результат работы программы
2. дочитайте главу о классах до конца, если там ничего не будет сказано о this, то посмотрите это слово в алфавитном указателе
3. http://www.cplusplus.com/reference/std/locale/locale/
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.07.2011, 02:10     Ввод значения в функцию класса пользователем (с консоли)
Еще ссылки по теме:

Написать функцию добавления значения в определенную позицию списка, заданную пользователем C++
Ввод в консоли C++
Зациклить и организовать диалог с пользователем в консоли C++

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

Или воспользуйтесь поиском по форуму:
hoot
 Аватар для hoot
100 / 21 / 3
Регистрация: 10.11.2010
Сообщений: 193
20.07.2011, 02:10  [ТС]     Ввод значения в функцию класса пользователем (с консоли) #9
И еще раз спасибо!)
Yandex
Объявления
20.07.2011, 02:10     Ввод значения в функцию класса пользователем (с консоли)
Ответ Создать тему
Опции темы

Текущее время: 17:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru