यहाँ एक टुकड़ा दिखा मैं क्या हासिल करने की कोशिश कर रहा हूँ:प्रकार <T> प्रकार वैरिएंट में कनवर्ट करना, क्या यह संभव है?
type
TMyObject<T> = class (TObject)
function GetVarType(Value: T): TVarType;
end;
function TMyObject<T>.GetVarType(Value: T): TVarType;
var
TmpValue: Variant;
begin
TmpValue := Variant(Value); //Invalid typecast
Result := VarType(TmpValue);
end;
मुझे पता है कि समान किरदार के साथ ऊपर apporach अनुभवहीन है, लेकिन मुझे आशा है कि आप विचार मिलता है। मैं इसे कुछ रूपांतरण तंत्र से बदलना चाहता हूं।
टीएमओब्जेक्ट हमेशा इंटीजर, स्ट्रिंग, सिंगल, डबल जैसे सरल प्रकार का होगा।
इस तरह के रूपांतरण का उद्देश्य यह है कि वर्ट टाइप मुझे प्रत्येक साधारण प्रकार के लिए पूर्णांक स्थिर देता है जिसे मैं कहीं और स्टोर कर सकता हूं।
मैं जानना चाहता हूं कि ऐसा रूपांतरण संभव है या नहीं?
आपके समय के लिए धन्यवाद।
+1, मैं सी ++ डेल्फी ... –
में टेम्पलेट्स के लिए लंबे समय @ सेठ मुझे नहीं पता था कि आप एक डेल्फी उपयोगकर्ता थे। मैंने हमेशा आपको घुंघराले ब्रेसिज़ के रूप में नीचे रखा था! –
आमतौर पर लेकिन विशेष रूप से नहीं। मैं डेल्फी को सी # के मूल-निष्पादन योग्य-उत्पन्न संस्करण के रूप में उपयोग करता हूं (खड़ा नहीं हो सकता ऑनलाइन असेंबली का उपयोग करने में सक्षम होने के नाते) और इसे बहुत पसंद है। –