Какой аналог typedef из Си есть в Java? Или как это можно грамотно обойти? Например, работаю с Android-NDK, в Си есть функция, ее прототип:
LONG List_File_Card(SCARDHANDLE gCardHandle, BYTE *buffer, DWORD *bufferLength);
Типы LONG,SCARDHANDLE,BYTE,DWORD
определены в h-никах, по аналогии typedef long LONG;
В Java коде определяю эту же функцию как
public static native LONG List_File_Card(SCARDHANDLE gCardHandle, BYTE *buffer, DWORD *bufferLength);
Нужно, чтобы в эту функцию поступали и возвращались такие же имена типов данных, как и в Си. Как их можно и лучше определить в Java? С помощью классов, интерфейсов, enum? Подскажите, пожалуйста.
typedef
, либо похожего аналога, в Java нет.
Можно попробовать сделать эмуляцию через наследование:
public class LONG extends Long {}
Но это уже будет не примитивный тип, так что, я думаю, не стоит этим заниматься.
Батенька, у вас проблема не в typedef
, а в маппинге сишных типов на Java типы:
Почитайте доку про маппинг сишных типов на Java.
На стороне C, вы должны декларировать функцию типа:
jlong <имя_пакета>_List_File_Card(<blah-blah);
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Есть Activity у которого есть свой тулбарВ этом activity два фрагмента, один из которых также содержит свой тулбар
При запуске Android Device Monitr не работает Hierarchy ViewerВо всех окнах пишет ошибку:
Подскажите пожалуйстаСделал перевод сайта при помощи Resourcebundle