Il s'agit du type NativeInt.
Infos trouvée sur le blog de Chee Wee Chua
Il existe une seule occurence de ce type dans l'unité Borland.Vcl.Windows :
Code d'exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 TWndClassInfoEx = packed record cbSize: UINT; style: UINT; lpfnWndProc: NativeInt; cbClsExtra: Integer; cbWndExtra: Integer; hInstance: HINST; hIcon: HICON; hCursor: HCURSOR; hbrBackground: HBRUSH; lpszMenuName: IntPtr; lpszClassName: IntPtr; hIconSm: HICON; end;
Le type ne semble pas supporté par le debugger et le suivi de variable.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 program NativeIntDotNet; {$APPTYPE CONSOLE} uses SysUtils; var I: NativeInt; K: NativeUInt; begin I := Int32.MaxValue; WriteLn('I = Maxvalue: ', I); Inc(I); K := Int32.MaxValue; WriteLn('K = Maxvalue ', K); K := K + K + 1; WriteLn('I: ', I); WriteLn('K: ', K); readln; end.
[edit]
[FONT=Arial]NativeInt, and NativeUInt are not CLS compliant.[/FONT]
Partager