विज़ुअल C++-जनरेटेड कोड स्निपेट में इन ऑपरेटरों का क्या मतलब है?


नीचे दिए गए कोड स्निपेट में ^>^ (पंक्ति 1) और “%” (पंक्ति 6) का क्या मतलब है:

void main(array<String^>^ args)
{
	Application::EnableVisualStyles();
	Application::SetCompatibleTextRenderingDefault(false);
	Proj03122::stanForm form;
	Application::Run(% form);
}

नीचे दिए गए कोड स्निपेट में ‘^’ का क्या मतलब है:

private: System::Void btnOk_Click(System::Object^ sender, System::EventArgs^ e) {
	String^ firstname = this->tbFirstName->Text;
	String^ lastname = this->tbLastName->Text;

	this->Greeting->Text = "hello, " + firstname + " " + lastname;
}

मैंने क्या प्रयास किया है:

मैंने इसे गूगल पर खोजा लेकिन दुर्भाग्य से, किसी ने इसके बारे में बात नहीं की। मैंने C++ के बारे में कुछ ट्यूटोरियल का भी अध्ययन किया, लेकिन प्रश्नों पर ध्यान नहीं दिया गया।

समाधान 1

इसे हैट पॉइंटर के रूप में जाना जाता है और यह इंगित करता है कि यह संसाधन कचरा एकत्र किया गया है। आप वहां जो देख रहे हैं वह विज़ुअल सी++ सीएलआई प्रतीक है। माइक्रोसॉफ्ट इसे कहता है ऑब्जेक्ट ऑपरेटर को हैंडल (^)[^]. आप इसे स्मार्ट पॉइंटर के एक रूप के रूप में सोच सकते हैं (यद्यपि वह कचरा संग्रहण मानसिकता पर निर्भर करता है), जहां ऑब्जेक्ट को हटा दिया जाता है जब रनटाइम यह निर्णय लेता है कि ऑब्जेक्ट अब सक्रिय नहीं है।

[Edit]मैं के बारे में आपका प्रश्न भूल गया % ऑपरेटर। यह C++/CLI का उपयोग करके किसी संदर्भ का प्रबंधित समकक्ष है। सामान्य तौर पर, यदि आप सोचते हैं ^ के बराबर होना * तो फिर इस दुनिया में % के समतुल्य है &.

समाधान 2

यदि आप ‘^>^’ खोज रहे हैं, तो इसमें कोई आश्चर्य की बात नहीं है कि आपको कुछ भी नहीं मिल रहा है।

ऑपरेटर ‘^’ है, जिसका अर्थ है कि पिछला प्रकार C++ CLI में कचरा संग्रहण योग्य है।

‘<>‘ अक्षर इसका हिस्सा हैं array घोषणा, सरणी में शामिल एक प्रकार को दर्शाती है। आपके मामले में, यह एक को परिभाषित कर रहा है array of Strings, या (गलत तरीके से), ‘सरणी<स्ट्रिंग>‘।

‘^’ अक्षर वापस डालें, और आपके पास है array<String^>^जिसका अर्थ है संग्रहणीय स्ट्रिंग्स की एक संग्रहणीय सरणी।

コメント

タイトルとURLをコピーしました