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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
#1

Динамический bitset, возможно ли такое? - C++

04.11.2013, 19:12. Просмотров 1786. Ответов 34
Метки нет (Все метки)

как известно size в bitset<size> должно быть статической, как реализовать класс с полем bitset<size> в
конструктор\параметр которого передается некое число N
а size = N + -/(какая то мудрая формула + куча циклов)
возможно ли такое?

Добавлено через 1 минуту
просто что то клемануло и эта мысль не покидает
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2013, 19:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Динамический bitset, возможно ли такое? (C++):

Что такое динамический класс? - C++
у меня в работе есть задание &quot;создать динамический класс&quot;. что это значит? нигде ничего внятного не нашел. знаю, что класс создается так ...

Возможно ли создать двумерный динамический массив? - C++
существует ли возможность создать двумерный динамический массив, к примеру 2х5 ?

Приведение типов, возможно ли такое - C++
Всем доброго времени суток... Не знаю как правильно спросить то что я хочу, но попробую объяснить на примере) u_char *packet; //массив...

Возможно ли сделать такое сокращение? - C++
Здравствуйте, скажите пожалуйста возможно ли такое сделать ? Есть четыре цифры, в первой цифре может быть 1 или 2, во второй тоже 1 или...

Простой Кейлоггер. Такое возможно? - C++
Вчера начала изучать C++. Я хочу написать кейлоггер. Но прочитала на одном форуме, что без dll библиотек это невозможно. Алгоритм...

Необъявленые переменные в C++- неужели такое возможно? - C++
template &lt;class T&gt; class bithree { public: void pomechenie() {per= 8;}; }; int main() { // bithree&lt;int&gt; s; ...

34
Hrobak
289 / 169 / 11
Регистрация: 22.03.2010
Сообщений: 483
Завершенные тесты: 1
04.11.2013, 20:05 #16
Cra3y, может тогда уже лучше к специализации std::vector <bool> прибегнуть?
0
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
04.11.2013, 20:06  [ТС] #17
Цитата Сообщение от Nick Alte Посмотреть сообщение
араметр bitset должен быть constexpr, а параметр функции им быть не может в принципе ни при каких условиях.
к счастью у меня такой проблемы нету, мысли глупые просто в голову лезут

так это не подойдет:?

Цитата Сообщение от Hrobak Посмотреть сообщение
1
2
3
4
5
6
template <std::size_t N>
class BB
{
* * std::bitset <fun(N)> b;
};
где fun (...) - некоторая constexpr функция. Но в таком случае все циклы придется реализовывать с помощью рекурсии.
0
Croessmah
Ушел
Эксперт CЭксперт С++
13557 / 7707 / 872
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
04.11.2013, 20:08 #18
Цитата Сообщение от Хулиган Посмотреть сообщение
так это не подойдет:?
constexpr - это константы времени компиляции, так что ни о какой "динамике" речи не идет
0
Max Dark
шКодер самоучка
1852 / 1652 / 603
Регистрация: 09.10.2013
Сообщений: 3,678
Записей в блоге: 6
Завершенные тесты: 2
04.11.2013, 20:08 #19
Как по мне, лучше реализовать и расширить то, что я предлогал в №8 посте, а это изврат. ИМХО
0
Hrobak
289 / 169 / 11
Регистрация: 22.03.2010
Сообщений: 483
Завершенные тесты: 1
04.11.2013, 20:10 #20
Цитата Сообщение от Хулиган Посмотреть сообщение
так это не подойдет:?
Подойдет, но здесь придется передавать n как шаблонный параметр и веселиться с compile-time рекурсией. К тому же шаблонный параметр должен быть constexpr.
0
Nick Alte
Эксперт С++
1642 / 1014 / 119
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
04.11.2013, 20:12 #21
Цитата Сообщение от Хулиган Посмотреть сообщение
так это не подойдет:?
Ну здесь-то N не в конструктор передаётся. Если задача только в том, чтобы вычислить M из параметра шаблона N, то тут всё упирается в ограничения constexpr-функций, то есть, вполне реализуемо. А вот о передаче N конструктору можно забыть.
0
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
04.11.2013, 20:13  [ТС] #22
Цитата Сообщение от Croessmah Посмотреть сообщение
constexpr - это константы времени компиляции, так что ни о какой "динамике" речи не идет
constexpr функции - зачем нужны тогда? посчитать что то и подставить значения, почему сразу нне вставить готовое значение(возможно я это не пойму пока не столкнусь с задачей требующей такого решения ))
0
Nick Alte
Эксперт С++
1642 / 1014 / 119
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
04.11.2013, 20:16 #23
Цитата Сообщение от Хулиган Посмотреть сообщение
почему сразу нне вставить готовое значение
Потому что один раз написать функцию обычно надёжнее и удобнее, чем много раз вручную считать готовые значения с риском ошибиться.
0
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
04.11.2013, 20:19  [ТС] #24
Цитата Сообщение от Cra3y Посмотреть сообщение
Как по мне, лучше реализовать и расширить то, что я предлогал в №8 посте, а это изврат. ИМХО
в данный момент такой задачи нет, просто стало интересно возможно ли чтот придумать динамическое используя bitset

Добавлено через 2 минуты
что можно стоящее почитать о C++11?(кроме доки на англ языке) мб ссылки какие то есть....этот стандарт сильно расширяет возможности?
0
MrGluck
Модератор
Эксперт CЭксперт С++
7497 / 4613 / 694
Регистрация: 29.11.2010
Сообщений: 12,631
04.11.2013, 20:25 #25
Цитата Сообщение от Хулиган Посмотреть сообщение
что можно стоящее почитать о C++11?
"The C++ Standart library (second edition). A Tutorial and Reference" Nicolai M.Josuttis
1
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
04.11.2013, 20:29  [ТС] #26
на англ языке порядок, придется по этой книге англ язык еще выучить
0
Avazart
Эксперт С++
7236 / 5432 / 304
Регистрация: 10.12.2010
Сообщений: 24,143
Записей в блоге: 17
04.11.2013, 21:45 #27
Вроде в boost есть реализация расширяемого bitset<>
0
diagon
Higher
1932 / 1198 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
04.11.2013, 21:49 #28
Можно просто через метапрограммирование вычислять, ну либо через constexpr.
Но проще vector<bool> использовать.
0
Croessmah
04.11.2013, 21:59
  #29

Не по теме:

Цитата Сообщение от Avazart Посмотреть сообщение
Вроде в boost есть реализация расширяемого bitset<>
ссылка в посте #12

0
alexfox
0 / 0 / 0
Регистрация: 04.10.2015
Сообщений: 1
19.12.2015, 11:45 #30
Croessmah,
0
19.12.2015, 11:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.12.2015, 11:45
Привет! Вот еще темы с ответами:

Возможно ли объекты и потомки этих объектов поместить в один и тот же динамический массив? - C++
У меня есть объекты, очень сложные объекты. Они постоянно относятся то одному то другому массива, они постоянно выполняют большое...

Bitset<0> - C++
Не на англоязычных просторах ни на наших не нашел, что же означает определение как: bitset&lt;0&gt; Моё предположение, это очищенный...

Почему возможно задать массив с размером -1 (почему такое вообще компилируется)? - C++
Всем привет. Долгое время не писал на плюсах, решил пройтись по основам, вспомнить. По непонятным для меня причинам этот код...

Bitset to int - C++
Здравствуйте! вот пробую: bitset &lt;8&gt; id_paketa = 00000010; cout &lt;&lt; id_paketa &lt;&lt; &quot; &quot; &lt;&lt; id_paketa.to_ullong(); Почему получается...


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

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.