Я хотел бы построить плотный набор целых чисел на C++, используя трюк, описанный на https://research.swtch.com/sparse. Этот подход обеспечивает хорошую производительность, позволяя читать неинициализированную память.
Как я могу реализовать эту структуру данных, не вызывая неопределенного поведения и не нарушая такие инструменты, как Valgrand или ASAN ?
Изменить: похоже, что респонденты сосредотачиваются на слове «неинициализированный» и интерпретируют его в контексте языкового стандарта. Вероятно, это был неудачный выбор слова с моей стороны - здесь «неинициализированный» означает только то, что его значение не важно для правильного функционирования алгоритма. Очевидно, что эту структуру данных можно безопасно реализовать (LLVM делает это в SparseMultiSet). Мой вопрос: каков наилучший и наиболее эффективный способ сделать это?
Подробнее здесь: https://stackoverflow.com/questions/437 ... and-profit
Как безопасно реализовать «Использование неинициализированной памяти для развлечения и выгоды»? ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как компиляторы C обрабатывают использование неинициализированной переменной?
Anonymous » » в форуме C++ - 0 Ответы
- 34 Просмотры
-
Последнее сообщение Anonymous
-