|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||||||
Во время компиляции определить, является ли тип полным24.02.2015, 01:56. Показов 1282. Ответов 5
Метки нет (Все метки)
Доброго времени суток.
Это уже моя далеко не первая попытка создать детектор неполных типов. Требуется кросс-платформа: сl/mingw/gcc/clang Моя последняя самая успешная модель не проходит всех тестов. Она не в состоянии однозначно определить полный ли тип, или не полный, и имеет на выходе 3 ответа: да, нет, не знаю. (если у кого есть рабочие модели, буду рад их рассмотреть. На самом деле я пересмотрел множество разных моделей, которые смог найти в интернетах. Но ни одна из них не прошла все тесты) Я использовал множество разных трюков, что бы добиться положительного результата, но пока безрезультатно. Ниже представленный код - ещё одна из попыток. Но возникла непредвиденная проблема. Мне не понятно, почему этот код вообще скомпилировался??????? http://rextester.com/TJSW25522
И как это лечить?
3
|
||||||
| 24.02.2015, 01:56 | |
|
Ответы с готовыми решениями:
5
Определить, является ли дерево почти полным Определить, является ли число полным квадратом
|
|
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,894
|
|||||||||||||||||||||
| 24.02.2015, 14:47 | |||||||||||||||||||||
|
hoggy, под CL почему компилируется не знаю. Копилировал под GCC 4.8. Если закомментировать строки ниже 73, то компилятор спотыкается на вызове:
0
|
|||||||||||||||||||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||||||||||||
| 24.02.2015, 15:38 [ТС] | ||||||||||||
|
И очевидно, что проблема именно с компиляторами вижал студии. О gcc сейчас речь вообще не идет. Во-первых, делать специализации под все возможное и невозможное множество возможных типов - контрпродуктивно, и контрэффективно. А во-вторых: Мета-функция должна уметь работать с любыми типами. И с обычными, и с продуктами шаблона. Но тот факт, что в параметрах шаблона фигурируют не полные типы ещё не означает, что сам агрегат - так же не полный. пример:
эта информация не поможет мне 100% установить истину. Выше я писал: и что означает её странный ответ "я не знаю".
так полный тип, или не полный? И ни одна из виденных мною моделей не проходит 4й тест.
0
|
||||||||||||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 25.02.2015, 10:24 | |
|
hoggy, Оригинальный баг... Судя по всему ваш вывод верен, но по какой причине такое происходит - нужно обращаться к разработчикам MSVC. Предлагаю написать им в багтрекер.
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 25.02.2015, 13:08 [ТС] | ||
|
сказали спасибо и пообещали разобраться, что за канитель.
1
|
||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 03.03.2015, 22:35 [ТС] | ||
|
Получил ответ от майкрософт:
5
|
||
| 03.03.2015, 22:35 | |
|
Помогаю со студенческими работами здесь
6
Определить, является ли приведенная функция функционально полным набором
Тип не найден или не является константой времени компиляции: APIConnection
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|