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

Принадлежность множеству - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
Neon-z
46 / 41 / 1
Регистрация: 06.09.2010
Сообщений: 419
30.07.2012, 22:34     Принадлежность множеству #1
На дельфи есть прекрасный оператор IN, который проверяет принадлежность множуству (я это так называю)
То есть
Delphi
1
 if Key IN ['a','b','c'] then ...
А как такое реализовать на С++?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
30.07.2012, 22:35     Принадлежность множеству #2
C++
1
2
if( Key >= 'a' && Key <= 'c' ){
}
Neon-z
46 / 41 / 1
Регистрация: 06.09.2010
Сообщений: 419
30.07.2012, 22:51  [ТС]     Принадлежность множеству #3
А если не только буквы? или если я хочу проверять в массиве?
То есть на си аналога такому оператора нет?
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,048
30.07.2012, 23:00     Принадлежность множеству #4
Цитата Сообщение от Neon-z Посмотреть сообщение
То есть на си аналога такому оператора нет?
Нет но можно имитировать
можно if ами
но мне ближе switch

C++
1
2
3
4
5
6
7
8
9
10
switch(Key)
{
case 'a':
case 'b':
case 'c':
  xzFunc();// здесь что хочешь сделать если попадаем в дапазон
 break;
default:
   // здесь если не попадаем
}
}
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
30.07.2012, 23:02     Принадлежность множеству #5
Почему, множества есть в языке. Правда, с не таким удобным синтаксисом.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <set>
#include <iostream>
 
int main()
{
  std::set<char> chars;
  chars.insert('a');
  chars.insert('b');
  chars.insert('c');
 
  if (chars.count('b') != 0) {
    std::cout << "b is in {a, b, c}";
  }
  else {
    std::cout << "b is not in {a, b, c}";
  }
  return 0;
}
Yandex
Объявления
30.07.2012, 23:02     Принадлежность множеству
Ответ Создать тему
Опции темы

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