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

Ошибка в bool функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Удалить строки и продублировать столбцы http://www.cyberforum.ru/cpp-beginners/thread702133.html
Помогите решить две задачки (написать код программы в с++): 1. удалить строки с тремя одинаковыми подряд идущими элементами. 2. продублировать столбцы с четной суммой элементов.
C++ Подскажите литературу Здравствуйте, уважаемые. Подскажите какой-нибудь учебник по C++ для начинающих в формате mobi http://www.cyberforum.ru/cpp-beginners/thread702114.html
Что это за компилятор C++
Люди подскажите что это за компилятор и где его можно скачать под Windows 7
C++ Использование перегруженного оператора ввода/вывода в поток базового класса для объекта производного класса
Здравствуйте! Можно ли использовать перегруженный оператор ввода/вывода в поток из базового класса для объекта производного класса, если производный класс не содержит новых полей? class A { protected: int x; public: // Конструкторы и деструктор friend istream &operator >> (istream &, A &); };
C++ Небольшая недоработка в программе http://www.cyberforum.ru/cpp-beginners/thread702102.html
Задача была написать программу, которая читает введенную матрицу, делает проверку значений на четность и положительность. Если условия выполняются, то идет умножение на 2. По задаче если хоть один элемент изменен, то прога должна написать "true". Если же ни один элемент не подходит под условие, то вывод "false". Сама программа работает, но проблема в том, что проверка идет только по последнему...
C++ Неправильно выводится рисунок из звездочек Доброго времени суток, имеется задание: отобразить следующий вид последовательности используя While: * * * * ** ** **** ***** ** * ******* * имеется код, который выводит только последние 3 строки, помогите пожалуйста найти ошибку, заранее благодарен)) подробнее

Показать сообщение отдельно
Tiva
94 / 94 / 1
Регистрация: 25.04.2012
Сообщений: 429

Ошибка в bool функции - C++

19.11.2012, 15:11. Просмотров 339. Ответов 2
Метки (Все метки)

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
#define ADD_OBJ 2
#define ADD_SUB 4
#define DEL_OBJ 8
#define DEL_SUB 16
#define ADD_RIGHT 32
#define DEL_RIGHT 64
#define READ 2
#define WRITE 4
#define EXECUTE 8
#define DELETE 16
 
bool Matrix::check(int right, int k) //к-ключ. если 0 то проверка прав матрицы, если 1 то проверка прав общая
{
    if(k==1)
    {
        if(right & READ) return true;
        else if(right & WRITE) return true;
        else if(right & EXECUTE) return true;
        else if(right & DELETE) return true;
        else return false;
    }
    if(k==0)
    {
        if(right & ADD_OBJ) return true;
        else if(right & ADD_SUB) return true;
        else if(right & DEL_OBJ) return true;
        else if(right & DEL_SUB) return true;
        else if(right & ADD_RIGHT) return true;
        else if(right & DEL_RIGHT) return true;
        else return false;
    }
}
вызываю метод
C++
1
2
if(a.check(124,0)) //do something
else cout<<"нет доступа\n"
почему возвращает всегда истину? должно возвратить ложь
124 это сумма всех прав кроме добавления объекта(первого) 4+8+16+32+64
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru