powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Разбиение __int64 на слова
9 сообщений из 34, страница 2 из 2
Разбиение __int64 на слова
    #39705475
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad FПарни, подскажите, плиз, еще по вот такой ошибке:
на
void *xx = MapViewOfFile(...);
компилятор выдает: no matching function for call to 'MapViewOfFile'
Вызов производится в обычном виртуальном методе, не конструкторе.
С параметрами напутал что-то или #include забыл сделать
...
Рейтинг: 0 / 0
Разбиение __int64 на слова
    #39705478
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad FDima T,

Этот вопрос уже решился, спасибо. К тому же в педлагаемом варианте лишняя переменная лишнее присвоение, тогда как в дельфи в аналогичном способе достаточно было лишь приведения типов.
21680419 сделай inline и получишь только приведение типов.
...
Рейтинг: 0 / 0
Разбиение __int64 на слова
    #39705491
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TVlad FПарни, подскажите, плиз, еще по вот такой ошибке:
на
void *xx = MapViewOfFile(...);
компилятор выдает: no matching function for call to 'MapViewOfFile'
Вызов производится в обычном виртуальном методе, не конструкторе.
С параметрами напутал что-то или #include забыл сделать

1) Вызывается с теми же параметрами (число и типы), с которыми на ура работало в delphi.
2) Windows.hpp подключил, к тому же если бы оно ее просто не видело, то сообщени было бы про undeclared identifier, как понимаю.

Да и само сообщение на мой взгляд какое то странное, еще идеи есть?
...
Рейтинг: 0 / 0
Разбиение __int64 на слова
    #39705516
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad F,

Типы параметров не соответствуют
...
Рейтинг: 0 / 0
Разбиение __int64 на слова
    #39705533
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemargl,

Да, походу так. Переключился с 64-битного компилятора на 32-битный. И он мне вместо "no matching function" честно написал, что тип параметра не соответствует. Кругом враги, кругом измена.))
...
Рейтинг: 0 / 0
Разбиение __int64 на слова
    #39705563
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad F,

В с++ есть перегрузка функций по параметрам. Потому соответствие подбирается по совокупности с учетом возможного приведения типов.
...
Рейтинг: 0 / 0
Разбиение __int64 на слова
    #39705609
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemargl,

Прикинь, в паскале оно тоже есть и работает точно так же. Непонятно другое, почему компилятор c++ из той же версии среды разработки, что и delphi посчитал не совместимым для первого аргумента паскалевский тип THandle, который как раз и был придуман для этих целей и пришлось его в сишном варианте окостыливать таким вот малым костылем (HANDLE)THandle. Выглядит забавно.
...
Рейтинг: 0 / 0
Разбиение __int64 на слова
    #39706363
Гирлионайльдо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad F,

Ты о чём?
Код: sql
1.
2.
3.
4.
5.
6.
7.
TInt64Hi(unsigned long):
        mov     rax, rdi
        shr     rax, 32
        ret
TInt64Lo(unsigned long):
        mov     eax, edi
        ret



Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
 #include <stdint.h>

 uint32_t Int64Hi(uint64_t& value) {
	return *(((uint32_t*)&value)+1);
}

 uint32_t Int64Lo(uint64_t& value) {
	return *(((uint32_t*)&value));
}


uint32_t TInt64Hi(uint64_t num) {
    return Int64Hi(num);
}
uint32_t TInt64Lo(uint64_t num) {
    return Int64Lo(num);
}

...
Рейтинг: 0 / 0
Разбиение __int64 на слова
    #39706365
Гирлионайльдо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не дочитал вторую страницу
...
Рейтинг: 0 / 0
9 сообщений из 34, страница 2 из 2
Форумы / C++ [игнор отключен] [закрыт для гостей] / Разбиение __int64 на слова
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]