La plupart des développeurs d'applications utilisent-ils des entiers signés là où ils veulent vraiment utiliser des entiers non signés? Je le fais tout le temps, mes collègues aussi. Je n'ai pas vu beaucoup d'autres bases de code étendues (autres que Delphi VCL) et des exemples sur Internet utilisent généralement des entiers. Alors que les développeurs VCL utilisent leurs propres types de données (ce qui serait la façon la plus simple de déclarer des variables).
Quelque chose semble un peu terrible à propos de ce code
TStuffRec = record
recordID : Integer;
thingID : Integer;
otherThingID : Integer;
end;
quand il pourrait être écrit comme
TStuffRec = record
recordID : Cardinal;
thingID : Cardinal;
otherThingID : Cardinal;
end;
Fonctionnellement, ces enregistrements fonctionnent presque toujours de la même manière (et, espérons-le, continueront de fonctionner de la même manière dans Delphi 64 bits). Mais un très grand nombre aura des problèmes de conversion.
Mais il y a aussi des inconvénients à utiliser des entrées non signées. Principalement dû au fait qu'il est ennuyeux de mélanger les deux.
La vraie question est, est-ce une chose qui est réellement réfléchie ou incluse dans les meilleures pratiques? Est-ce généralement uniquement au développeur?