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

Ребята есть ли метод vector <bool> записать в бинарный файл? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Не находит файлы для include http://www.cyberforum.ru/cpp-beginners/thread954115.html
Здравствуйте, работаю в Code::Blocks'e, пытаюсь подключить свои файлы с помощью #include, но компилятор не может их найти. Уже добавил в проект, в папку с проектом, вообщем перепробовал всё. В чём...
C++ Внешняя функция вот условие лабы: Разработать класс Stud (студент) содержащий поля фамилия, семестр, 4 оценки, конструкторы и деструктор, функцию вывода информации по объекту. Внешняя функция exam заносит в объект... http://www.cyberforum.ru/cpp-beginners/thread954091.html
Численное решение уравнений C++
Прошу помощи. Найти наименьший положительный корень уравнения каждым из способов: метод итераций метод Ньютона (метод касательных) метод секущих (правило ложного положения) метод деления...
C++ Массивы. Найти среднее арифметическое отрицательных чисел и подсчитать количество чисел, входящих в диапазон
Всем привет! Начал изучать C++, сталкнулся вот с такой задачей Произвести следующую обработку 15 вещественных чисел: найти среднее арифметическое отрицательных чисел и подсчитать количество чисел,...
C++ Создать массив структур "Ведомость про участников конкурса" http://www.cyberforum.ru/cpp-beginners/thread954058.html
здравствуйте. Прошу написать программу. Большое спасибо за ваш труд. Условие: Создать массив структур, используя данные из задания. Создать программное приложение, которое включает его обработку с...
C++ Вывод простых чисел Всем привет, люди помогите написать программу очень нужно и если можно то с комментариями. Написать программу, которая выводит простые числа в диапазоне от 100-500 а) простые числа выводятся в одну... подробнее

Показать сообщение отдельно
AnyOne697
134 / 106 / 5
Регистрация: 22.05.2010
Сообщений: 533
14.09.2013, 02:45
Боюсь наврать, но возможно std::vector::data() поможет.

Почему могу наврать? Потому что boolean в C++ это восемь бит (минимальная длина слова на i486, впрочем, как и почти на любой архитектуре). Поэтому один бит можно получить только играясь со сдвигами, побитовыми умножениями или сложениями. std::vector<bool> в идеале должен играться со сдвигами и побитовыми умножениями/сложениями. Но случайно может оказаться не так (например, если используется MS Visual C++ Compiler). К тому же, не совсем понятно, что он должен по стандарту вернуть на std::vector::data().

Алсо, возможно как альтернатива, можно использовать std::bitset. Не знаю, что там с записью в файл, но возможно такое прокатит. Наконец, можно нагородить свой велосипед, благо, что здесь особо ничего сложного нет, а если юзать внутри std::vector<unsigned> (или unsigned char), но вообще никаких проблем.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru