आपको दाईं ओर कम से कम एक मूल्य Int64
पर डालना होगा। उदाहरण के लिए, इन दोनों को XE6 पर पूरी तरह से अच्छी तरह से संकलन:
const
minDriveFreeSpace = Int64(1024) * 1024 * 1024 * 99;
var
minDriveFreeSpace2: Int64;
begin
minDriveFreeSpace2 := Int64(1024)*1024*1024*99;
नोट यह rvalues कि कलाकारों में से किसी एक हो सकता है। उदाहरण के लिए, इस काम करता है समान रूप से और साथ ही:
const
minDriveFreeSpace = 1024 * 1024 * 1024 * Int64(99);
यह Delphi language guide में प्रलेखित है (हालांकि नहीं बल्कि खराब) - जोर मेरा:
सामान्य तौर पर, पूर्णांकों पर अंकगणितीय आपरेशनों का मान प्रदान इंटीजर टाइप करें, जो 32-बिट LongInt के बराबर है। ऑपरेशंस केवल एक या अधिक Int64 ऑपरेटरों पर प्रदर्शन करते समय Int64 प्रकार का मान देता है। गलत परिणाम इसलिए, निम्नलिखित कोड का उत्पादन:
var
I: Integer;
J: Int64;
...
I := High(Integer);
J := I + 1;
इस स्थिति में एक Int64 वापसी मान, मैं Int64 के रूप में कास्ट पाने के लिए:
...
J := Int64(I) + 1;
स्रोत
2014-05-13 15:06:50
दिलचस्प! ऐसा लगता है कि यह डेविड द्वारा बताए गए समान (डुप्लिकेट) प्रश्न में डिस्क स्पेस का प्रतिनिधित्व करने से भी संबंधित है। –