|
32 / 32 / 2
Регистрация: 07.08.2011
Сообщений: 89
|
|||||||||||
Возможно ли это на с++?07.08.2011, 19:46. Показов 4689. Ответов 56
Метки нет (Все метки)
Допустим есть класс
А теперь вопрос: Существует ли способ определить операторы так, чтобы работал следующий код:
0
|
|||||||||||
| 07.08.2011, 19:46 | |
|
Ответы с готовыми решениями:
56
Как возможно изменить даты создания файлов на сервере? И Возможно ли это? Кто может это переработать для андроида? И вообще это возможно? Как это сделать , если это возможно, сам не уверен |
|
32 / 32 / 2
Регистрация: 07.08.2011
Сообщений: 89
|
||
| 07.08.2011, 21:30 [ТС] | ||
|
0
|
||
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
||
| 07.08.2011, 21:35 | ||
|
0
|
||
|
32 / 32 / 2
Регистрация: 07.08.2011
Сообщений: 89
|
||
| 07.08.2011, 21:45 [ТС] | ||
|
Но тут я либо не понимаю принцип STL, либо не понимаю как они это хорошо реализовали - разве на получение reference и его использование не тратятся лишние ресурсы? Например если просто в описанном в первом посте классе задать массив интов, и делать выбор из них нужного - банальным делением - не будет ли так быстрее при доступе к большому количеству битов, хранящихся в интах? Ведь нам на каждом шаге не нужен reference - только деление - результат деления и остаток(в асме знаю, что остаток и результат сразу доступны после 1й команды) и две булевы операции. Или все таки reference быстрее будет работать? Ведь даже у него нет никаких способов указать на конкретный бит одной ссылкой. По сути с референсами надо перейти по ссылке и все равно выполнить те же операции, чтобы достать бит. Переходы быстрые, но зачем делать лишнее там, где планируется пускать по миллионам записей? Про вектор я говорил что не годится, т.к. в некоторых случаях лучше делать циклический один раз выделенный массив, чем вектор - намного шустрее работает. Но зависит от того, где и зачем.
0
|
||
|
|
||||||
| 07.08.2011, 21:52 | ||||||
Сообщение было отмечено как решение
Решение
вот быдлокод:
4
|
||||||
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
| 07.08.2011, 22:05 | |
|
Teravisor, насчет скорости bitset не знаю - мне кажется он скорее для удобства, но в том же std::vector<bool> реализован нужны вам функционал, но не реализованы удобства типа возврата reference и работы с ним
насчет того как может быть быстрее: 1) для разных типов контенеров ( с разным типом доступа ) представлены разные алгоритмы 2) для stl у компилятора большие возможности инлайнить алгоритмы и операции контейнеров Добавлено через 7 минут Kastaneda, неплохо! издержки, что не работает код вида mb[0]=mb[1]=true;
1
|
|
|
32 / 32 / 2
Регистрация: 07.08.2011
Сообщений: 89
|
||||
| 07.08.2011, 22:14 [ТС] | ||||
|
Буду теперь копаться и думать. Спасибо за ваше внимание и помощь в этой теме. Добавлено через 4 минуты
0
|
||||
|
|
||||||||
| 07.08.2011, 22:49 | ||||||||
0
|
||||||||
|
32 / 32 / 2
Регистрация: 07.08.2011
Сообщений: 89
|
||
| 07.08.2011, 23:04 [ТС] | ||
|
0
|
||
|
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
|
||
| 07.08.2011, 23:17 | ||
|
0
|
||
| 07.08.2011, 23:19 | |
|
Не по теме: а если еще сравнить исходники вектора в составе vs и gcc, так мелкософт это просто кучка непрофессионалов:D
0
|
|
|
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
||||||
| 07.08.2011, 23:27 | ||||||
Сообщение было отмечено как решение
Решение
Мне кажется, что данная задача — это как раз тот случай, когда разумно воспользоваться прокси-объектами.
Ниже мои наброски. Несмотря на то, что исходный код раздулся, хороший оптимизирующий компилятор имеет широкий простор для деятельности и способен повыкидывать нафиг все прослойки.
4
|
||||||
|
32 / 32 / 2
Регистрация: 07.08.2011
Сообщений: 89
|
||
| 07.08.2011, 23:30 [ТС] | ||
|
0
|
||
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
| 07.08.2011, 23:36 | |
|
0
|
|
|
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
|
| 07.08.2011, 23:51 | |
|
0
|
|
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
| 07.08.2011, 23:59 | |
|
grizlik78, у вас фактически реализация как bitset c Accessor вместо reference
0
|
|
|
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
|
|
| 08.08.2011, 00:00 | |
|
alex_x_x, ну общий принцип-то давно в книжках описан. Но я не подсматривал, честно
0
|
|
|
32 / 32 / 2
Регистрация: 07.08.2011
Сообщений: 89
|
||
| 08.08.2011, 00:15 [ТС] | ||
|
P.S. Не пробуйте сравнить по скорости эти варианты на студии. Я попробовал и долго смеялся как она компилит.
0
|
||
|
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
|
|||
| 08.08.2011, 12:22 | |||
![]() Добавлено через 3 минуты 1. константного выражения в качестве размера. 2. Должен быть глобальным, если его размер превосходит размер стека. Либо размер стека надо увеличивать. С динамическими массивами подобных проблем нет. А скорость доступа по указателю - одинакова.
0
|
|||
|
32 / 32 / 2
Регистрация: 07.08.2011
Сообщений: 89
|
|||
| 08.08.2011, 14:15 [ТС] | |||
|
0
|
|||
| 08.08.2011, 14:15 | |
|
Помогаю со студенческими работами здесь
40
К сыну в реанимацию забежал врач и заявил: «Это мой сын!». Возможно ли это? Возможно ли это и если да как это сделать? Как это возможно? И возможно ли? Это возможно? БД на Java, возможно ли это? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|