2

libfprint (fprint.h) のヘッダーを Pascal に変換しようとしているのですが、理解できない構造が見つかり、「C2Pas」などの一部のツールはエラーのみを送信します。

構造は次のとおりです。

struct fp_dscv_dev **fp_discover_devs(void);

fp_dscv_dev これは次のように宣言されているだけです。

/* structs that applications are not allowed to peek into */
struct fp_dscv_dev;

Pascalで同等のものは何ですか?

前もって感謝します

4

1 に答える 1

1

不透明なポインターは、伝統的に Pascal の基本的なポインターです (c の void * のように)。

本当に構造体アスペクトを返したい場合は、フィールドのないレコードとして定義します。

    Type 
       fp_dscv_dev   = record end;

コメントで述べたように、** は二重参照です。最新のほとんどのパスカル参照では、パラメーターと戻り値の宣言を参照できないため、追加の型を定義します。

       pfp_dscv_dev  = ^fp_dscv_dev
       ppfp_dscv_dev = ^pfp_dscv_dev

最後に、宣言自体は

   function fp_discover_devs:ppfp_dscv_dev; cdecl;  
于 2013-03-13T14:50:06.150 に答える