Paano Pinakamahusay na Gumagamit ng Operator ng Resolution ng Saklaw Sa C ++?



Ipakilala ka ng artikulong ito sa operator ng resolusyon ng saklaw sa C ++ at susundan ito ng programmatic na pagpapakita para sa detalyadong pag-unawa.

Tulad ng ipinahihiwatig ng pangalan, ginagamit ang operator ng resolusyon ng Saklaw upang makuha ang mga nakatagong mga pangalan dahil sa mga variable na saklaw upang maaari mo pa ring magamit ang mga ito. Sa artikulong ito maiintindihan namin kung paano gamitin ang operator ng resolusyon ng saklaw sa C ++ at ano ang iba't ibang mga layunin nito mula sa a .

Sa C ++, ang operator ng resolusyon ng saklaw ay ::. Maaaring gamitin ang operator ng resolusyon sa saklaw sa C ++ para sa:





Ngayon ay unawain natin ang bawat isa sa layunin ng isa-isa sa tulong ng mga halimbawa.

Pag-access sa isang pandaigdigang variable kapag mayroong isang lokal na variable na may parehong pangalan

Maaari mong gamitin ang operator ng resolusyon ng saklaw upang ma-access ang pandaigdigang variable kung mayroon kang isang lokal na variable na may parehong pangalan. Sa halimbawa sa ibaba mayroon kaming dalawang variable na parehong pangalan num na may pandaigdigang at lokal na saklaw. Kaya, upang ma-access ang variable ng global num sa pangunahing klase kailangan mong gumamit ng operator ng resolusyon ng saklaw (ibig sabihin :: num).



Halimbawa

# isama ang paggamit ng namespace std int num = 30 // Initializing a global variable num int main () {int num = 10 // Initializing the local variable num cout<< 'Value of global num is ' << ::num cout << 'nValue of local num is ' << num return 0 } 

Paglabas

Nagpapatuloy sa artikulong ito sa Operator ng Resolution ng Saklaw Sa C ++



Pagtukoy sa isang Pag-andar sa Labas ng isang Klase

Kung ipinapahayag mo ang isang pagpapaandar sa isang klase at pagkatapos ay nais mong tukuyin ito sa labas ng klase, magagawa mo iyon gamit ang operator ng resolusyon ng saklaw. Sa halimbawa sa ibaba, ipinapahayag namin ang isang bilis ng pagpapaandar sa Class Bike. Sa paglaon ay tinutukoy namin ang pagpapaandar sa pangunahing klase gamit ang operator ng resolusyon ng saklaw.

Halimbawa

# isama ang paggamit ng namespace std class Bike {public: // Just the Function Declaration void Speed ​​()} // Defining the Speed ​​function outside Bike class using :: void Bike :: Speed ​​() {cout<< 'Speed of Bike is 90 KMPH' } int main() { Bike bike bike.Speed() return 0 } 

Paglabas

Nagpapatuloy sa artikulong ito sa Operator ng Resolution ng Saklaw Sa C ++

Pag-access sa static ng isang klase variable

Maaari mong ma-access ang static variable ng klase gamit ang pangalan ng class at operator ng resolusyon ng saklaw (hal. Class_name :: static_variable). Maaari mong makita sa halimbawa sa ibaba, nagdedeklara kami ng isang static variable sa klase. Tinutukoy namin ang variable sa labas ng klase gamit ang operator ng resolusyon ng saklaw. Pagkatapos ina-access namin ito gamit ang pangalan ng operator ng operator ng resolusyon ng pangalan at saklaw.

Halimbawa

# isama ang paggamit ng namespace std class Subukan ang {static int num1 publiko: static int num2 // Lokal na parameter na itinatago ang miyembro ng klase // Maaaring mai-access ito ng miyembro ng klase gamit ang :: void function (int num1) {// num1 static variable ay maaaring ma-access gamit :: // inspite ng local variable num1 cout<< 'Static num1: ' << Try::num1 cout << 'nLocal num1: ' << num1 } } // Defining a static members explicitly using :: int Try::num1 = 10 int Try::num2 = 15 int main() { Try o int num1 = 20 o.function(num1) cout << 'nTry::num2 = ' << Try::num2 return 0 } 

Paglabas

Nagpapatuloy sa artikulong ito sa Operator ng Resolution ng Saklaw Sa C ++

Sumangguni sa isang klase sa loob ng isa pang klase

Maaari kang lumikha ng nakapugad na klase na may parehong mga variable na pangalan sa parehong mga klase. Maaari mong ma-access ang parehong mga variable gamit ang operator ng resolusyon ng saklaw. Para sa variable ng panloob na klase, kailangan mong gamitin Outer_Class :: Inner_Class :: variable.

Halimbawa

# isama ang paggamit ng namespace std class Outside_class {public: int num class Inside_class {public: int num static int x}} int Outside_class :: Inside_class :: x = 5 int main () {Outside_class A Outside_class :: Inside_class B}

Nagpapatuloy sa artikulong ito sa Operator ng Resolution ng Saklaw Sa C ++

Sa kaso ng maraming Mana

Kung mayroon kang dalawang mga magulang na klase na may parehong mga variable na pangalan at nagmamana ka ng pareho sa klase ng bata, maaari mong gamitin ang operator ng resolusyon ng saklaw na may pangalan ng klase upang ma-access ang mga indibidwal na variable.

Sa halimbawa sa ibaba, lumilikha kami ng dalawang magulang na klase ng Magulang1 at Magulang2, at pareho silang may variable na bilang. Kapag minamana namin ang pareho sa kanila sa klase ng Bata, maaari naming ma-access ang parehong mga variable ng num gamit ang pangalan ng klase at operator ng resolusyon ng saklaw.

Halimbawa

# isama ang paggamit ng namespace std class Parent1 {protektado: int num public: Parent1 () {num = 100}} class Parent2 {protektado: int num public: Parent2 () {num = 200}} class Child: public Parent1, public Parent2 { pampubliko: void function () {cout<< 'Parent1's num is ' << Parent1::num cout << 'nParent2's num is ' << Parent2::num } } int main() { Child obj obj.function() return 0 } 

Paglabas

paraan ng overloading at overriding sa java

Nagpapatuloy sa artikulong ito sa Operator ng Resolution ng Saklaw Sa C ++

Namespace

Ipagpalagay na mayroon kaming dalawang namespaces at parehong naglalaman ng klase na may parehong pangalan. Kaya upang maiwasan ang anumang salungatan maaari naming gamitin ang pangalan ng namespace kasama ang operator ng resolusyon ng saklaw. Sa halimbawa sa ibaba ay ginagamit namin std :: cout .

Halimbawa

# isama ang int main () {std :: cout<< 'Hello' << std::endl } 

Paglabas

Ngayon pagkatapos dumaan sa mga nasa itaas na programa na nauunawaan mo ang lahat tungkol sa operator ng resolusyon ng saklaw sa C ++. Inaasahan kong ang blog na ito ay may kaalaman at naidagdag na halaga sa iyo.

Ngayon pagkatapos maipatupad ang nasa itaas na programa na maunawaan mo ang Operator ng Resolution ng Saklaw Sa C ++. Sa gayon ay natapos na kami sa artikulong ito sa 'Quicksort in Java'. Kung nais mong matuto nang higit pa, suriin ang Java Training ni Edureka, isang pinagkakatiwalaang kumpanya sa online na pag-aaral. Ang kurso sa pagsasanay at sertipikasyon ng Java J2EE at SOA ng Edureka ay idinisenyo upang sanayin ka para sa parehong core at advanced na mga konsepto ng Java kasama ang iba't ibang mga balangkas ng Java tulad ng Hibernate & Spring.

May tanong ba sa amin? Mangyaring banggitin ito sa seksyon ng mga komento ng blog na ito at babalikan ka namin sa lalong madaling panahon.