Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 149
1

Как в классе задать одно из двух значений

12.02.2018, 14:26. Показов 1139. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как сделать, чтобы в Классе пользователь выбрал одно из двух значений? Например, пол человека. Тут, как и в структурах, надо использовать enum?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.02.2018, 14:26
Ответы с готовыми решениями:

Как рандомно выбрать из массива одно из двух значений?
Здравствуйте, господа. В общем, есть строковый массив: public String availability = new String {...

Запрос в 1С: объединение значений двух полей в одно
Подскажите, как правильно сформировать запрос, чтобы была одна строка ( план и факт были во одной...

Как правильно задать массив в классе Student
Добрый вечер!Подскажите, пожалуйста, как мне правильно задать массив в классе Student (в...

Как задать значение, переменной, находящейся в классе из формы?
Нужно, чтобы переменная принимала значения трекбара, который находится на форме, но увы постоянно...

9
1755 / 1347 / 1407
Регистрация: 28.10.2016
Сообщений: 4,267
12.02.2018, 14:33 2
Лучший ответ Сообщение было отмечено Nastia_01203 как решение

Решение

Тут как Вам удобно будет. Можно переменную пола определить как char, а в методе с выбором объявить массив char и в переменную будет попадать элемент с соответствующим индексом. Реализаций множество
1
0 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 149
12.02.2018, 14:34  [ТС] 3
Спасибо)а какой способ, по-Вашему, наилучший?
0
571 / 353 / 133
Регистрация: 15.09.2017
Сообщений: 1,239
12.02.2018, 14:36 4
А можно ограничить ввод:
C++
1
2
3
4
5
6
7
8
9
10
int main() {
    setlocale(0, "rus");
    char pol;
    do {
        cout << "\nВведите пол m или w: ";
        cin >> pol;
    } while (!(pol == 'm' || pol == 'w'));
 
    return 0;
}
1
0 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 149
12.02.2018, 14:38  [ТС] 5
Благодарю))
0
1755 / 1347 / 1407
Регистрация: 28.10.2016
Сообщений: 4,267
12.02.2018, 14:39 6
Nastia_01203, enum это перечисление, из двух вариантов будет возвращаться 0 или 1. С таким же успехом можно использовать тип bool. Просто нужно определиться, какое из значений какой пол отождествляет.
1
0 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 149
12.02.2018, 14:40  [ТС] 7
Понятно)
0
║XLR8║
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,361
Записей в блоге: 5
12.02.2018, 15:28 8
Лучший ответ Сообщение было отмечено Nastia_01203 как решение

Решение

Цитата Сообщение от Nastia_01203 Посмотреть сообщение
Например, пол человека.
Уууу, батюшка... по стандарту существует 4 типа этого значения https://en.wikipedia.org/wiki/ISO/IEC_5218

The four codes specified in ISO/IEC 5218 are:

0 = not known,
1 = male,
2 = female,
9 = not applicable.

The standard specifies that its use may be referred to by the designator "SEX".
C++
1
2
3
4
5
6
7
enum class SEX
{
  NotKnown = 0,
  Male = 1,
  Female = 2,
  NotApplicable = 9
};
Добавлено через 2 минуты
Цитата Сообщение от Nastia_01203 Посмотреть сообщение
пользователь выбрал одно из двух значений?
Если строго, тогда пользоваться enum class как в примере выше. Если пользоваться перчислениями enum тогда можно будет передать числовой тип.
1
0 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 149
12.02.2018, 15:40  [ТС] 9
Спасибо огромное!)
0
1755 / 1347 / 1407
Регистрация: 28.10.2016
Сообщений: 4,267
12.02.2018, 15:59 10
Ну, продолжая идею outoftime, можно воспользоваться typedef
C++
1
2
3
4
typedef enum { NotKnown, Male, Female, NotApplicable = 9 } sex;
....
sex m = Male, f = Female;
....
0
12.02.2018, 15:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.02.2018, 15:59
Помогаю со студенческими работами здесь

Как задать нескольким кнопкам одно событие
Привет всем! Моя задача - есть 16 кнопок 1 из них становиться другого цвета (реализовано) мы...

Задать значения четырёх переменных. Разработать алгоритм и программу для получения двух наименьших значений
Задать значения четырёх переменных. Разработать алгоритм и программу для получения двух наименьших...

Как задать размерность массива в классе используя переменную в коде?
Добрый вечер, вопрос такой: есть переменная в коде кнопки, мне нужно создать массив в отдельном...

как выбрать из 5 значений одно верное?
Может кто писал что то подобное, поделитесь плиз, а то с сходу не получается ничгео придумать :(...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru