|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
||||||
CreateThread: возможно ли запустить не статический метод класса?25.06.2019, 13:47. Показов 4252. Ответов 30
Метки нет (Все метки)
Возможно ли в CreateThread запустить не static процедуру класса?
0
|
||||||
| 25.06.2019, 13:47 | |
|
Ответы с готовыми решениями:
30
Вызов метода из другого класса, при этом нельзя создать объект второго класса и метод не статический Статический элемент и метод класса Написать статический метод класса |
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 25.06.2019, 17:08 [ТС] | |
|
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||
| 25.06.2019, 17:20 | |||
|
Добавлено через 8 минут
1
|
|||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|
| 26.06.2019, 03:18 | |
|
0
|
|
|
19497 / 10102 / 2461
Регистрация: 30.01.2014
Сообщений: 17,808
|
||||
| 26.06.2019, 08:52 | ||||
Подробности в C FAQ: http://c-faq.com/null/machexamp.html Дополнительно выделил очень ценное пояснение48) о том, что совместимость представления и требований к выравниванию означает для аргументов функции. Совершенно очевидно, что мы не можем закладываться на такую совместимость в случае с void * и остальными указателями. В стандарте С++: http://eel.is/c++draft/basic.compound#5
3
|
||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||||
| 26.06.2019, 14:55 | |||||||||
|
что void* и вообще все указатели на данныеимеют те же требования, что и char*, не? под "остальные типами" : что не были перечислены выше по тексту. то бишь такие указатели, которые не являются:
0
|
|||||||||
|
19497 / 10102 / 2461
Регистрация: 30.01.2014
Сообщений: 17,808
|
||
| 26.06.2019, 15:16 | ||
|
Собственно твои возражения никак ничего не меняют. В стандарте написано, что указатели на структуры все между собой имеют одинаковое внутреннее представление, но не написано, что указатели на void имеют такое же внутреннее представление, что и указатели на структуры или любые другие типы. Единственное что написано, что он имеет такое же внутреннее представление, что и указатель на char. А формулировка "способен хранить" не накладывает никаких требований на одинаковое при этом внутреннее представление, что подтверждается примерами из C FAQ.
1
|
||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||||
| 26.06.2019, 15:39 | ||||
|
вот здесь: важна формулировка: одинаковые требования для всей группы. вот здесь: "как и для других" - выше описанных. это вытекает из контекста. не? здесь не сказано, что для всех указателей-на-объекты-структур одинаковые требования. здесь сказано, что для всех указателей-на-объекты-структур требования такие же, как и для прочих (выше описанных, что вытекает из контекста) типов.
0
|
||||
|
19497 / 10102 / 2461
Регистрация: 30.01.2014
Сообщений: 17,808
|
|||||
| 26.06.2019, 16:36 | |||||
|
Я считаю, что other - это другие указатели на структуры, а не вообще все указатели. Ты считаешь, что это ссылка на вышеописанные указатели на char* и void*. Если это действительно так, то непонятно зачем так мудрено писать, отдельно выделять структуры, отдельно cv группы совместимых типов, когда можно было написать это одним простым предложением? Добавлено через 39 минут hoggy, ладно, давай вообще оставим в покое этот each other, допустим даже, что ты верно понял, а я нет. Но все равно, вот читаем:
Теперь такой вопрос: int, например, и double - это совместимые типы? Нет (надеюсь с этим-то никто спорить не станет). значит эта ситуация попадает под other types == (несовместимые типы и не структуры и не объединения), поэтому идем в конец и читаем:
2) Теперь допустим, что ты понял верно и все указатели на структуры совместимы между собой и совместимы с void*, а также все указатели на совместимые типы (пофигу на квалификатор) совместимы между собой и совместимы с void*. И? Это потребовало бы и от double* быть совместимым с void* и от int* ,быть совместимым с void*. double и double const совместимы между собой? да. если ты прав, они также совместимы и с void*. int и int const совместимы между собой? да. если ты прав, они также совместимы и с void*. И дальше у нас логическое противоречие возникает на основании пункта 1), нет? Твоя логика строилась на том, что other types - это обязательно функции, но, как оказалось, нет.
2
|
|||||
|
285 / 176 / 21
Регистрация: 16.02.2018
Сообщений: 666
|
|
| 26.06.2019, 17:15 | |
|
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||
| 26.06.2019, 18:43 | |||
|
но тогда, - подумал я, - почему фраза такая мудреная? если имеется ввиду группа указателей-на-структуры, почему так сложно? можно же было записать попроще, по аналогии с совместимыми типами? Кликните здесь для просмотра всего текста
Similarly, all pointers to structure types shall have the same representation and alignment requirements.
однако, пожалуй, я с тобой соглашусь: в твоих рассуждениях больше здравого смысла. а значит, скорее всего ты прав))
2
|
|||
| 26.06.2019, 18:43 | |
|
Помогаю со студенческими работами здесь
31
Как объявить статический метод класса?
Как передать нестатическое поле в статический метод класса? Как сделать методы к полям класса и перезапущенную операцию (статический метод)? Как рефлексией динамически получить статический метод для класса Convert Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|