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

Битовое ИЛИ. Пердача нескольких констант в один параметр функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Считывание символов из строки http://www.cyberforum.ru/cpp-beginners/thread633373.html
Здравствуйте, форумчане. Можете подсказать, каким образом можно считать из RichTextBox символы до какого либо знака-разделителя, записать их в переменную и потом, после этого знака, тоже считать и...
C++ delete this Какие последствия могут быть при выполнении команды delete this; из какой-нибудь функции члена? http://www.cyberforum.ru/cpp-beginners/thread633372.html
visual c++, как сделать форму невидемой C++
помогите, как в Visual Studio 2005 С++, сделать программу невидимой?
C++ Почему, С++ ругается на контруктор?
Почему у меня С++, ругается на контруктор вектора - vec3(const vec3 v) ??? typedef struct vec3 { union { float v; struct { float x;
C++ Композиционная связь между шаблонами. работа дестракторов http://www.cyberforum.ru/cpp-beginners/thread633356.html
Есть например такой проект. Вопросы в следующем. Как происходит процесс работы дестрактора между этими классами ? Правильно ли я реализовал Дестрактор в шаблоне Стек??? Т.к. Стек юзает...
C++ В заголовоке окна кракозябры, да и на компонентах тоже Начал работу с примерами с firststep для MFC Столкнулся с проблеммой: Английский заголовок окна выводится на китайском. Как сделать английский? Система: Windows 7 SP 1 по русски. #include... подробнее

Показать сообщение отдельно
Jupiter
Каратель
Эксперт С++
6559 / 3980 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
05.08.2012, 20:49
Цитата Сообщение от lowercase Посмотреть сообщение
так вот собсно в чем соль вопроса. как в функциях(в даном случае Device->Clear()) делается разбор такой сумы констант на отдельные константы?
проверяються нужные биты, по одному или группами
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
#include <iostream>
 
namespace constants {
   enum type { FOO = 1, BAR = 2, SPAM = 8, EGGS = 16 };
}
 
void printer(int cnst)
{
   if (cnst & constants::FOO)
      std::cout << "foo" << std::endl;
   if (cnst & constants::BAR)
      std::cout << "bar" << std::endl;
   if (cnst & constants::SPAM)
      std::cout << "spam" << std::endl;
   if (cnst & constants::EGGS)
      std::cout << "eggs" << std::endl;
}
 
int main()
{
   printer(constants::SPAM | constants::FOO);
   std::cout << std::endl;
   printer(constants::BAR | constants::EGGS);
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru