Սովորեք ծրագրավորել. Ո՞րն է տարբերությունը dot օպերատորի (.) Եւ -> միջև C ++ ում: [Կրկնօրինակել]?
պատասխանել 1:
Կետային օպերատորը հնարավորություն է տալիս մուտք գործել օբյեկտի այն տարր, որում ձախ օպերան օբյեկտի անուն է կամ հղում օբյեկտի վրա: Սլաքի օպերատորը հնարավորություն է տալիս մուտք ունենալ դեպի ձախ օպերան (պարզ ցուցիչ) մատնանշված օբյեկտի անդամին:
Բացի այդ, սլաքի օպերատորը կարող է ծանրաբեռնված լինել: Այսպիսով, եթե ձախ օպերան պարզ ցուցիչ չէ, այլ օբյեկտ, ապա օպերատորը կարող է ունենալ այլ նշանակություն: Այնուամենայնիվ, արդյունքը պետք է լինի պարզ ցուցիչ կամ հղում առկա օբյեկտին (որի համար սահմանվում է նաև մուտքի օպերատորը): Operիշտ օպերան պետք է լինի սինակտիկորեն այս օբյեկտի անդամ (գոյություն ունեցող անդամի նույնացուցիչ):
Խելացի ցուցիչները սլաքի օպերատորի խելամիտ ծանրաբեռնվածության լավ օրինակ են: Սրանք դասեր են, որոնք պարունակում են պարզ ցուցիչ և ավելացնում են ավելի շատ գործառույթներ (դինամիկ օբյեկտի կամ տեղեկանքի հաշվարկի եզակի սեփականություն): Սլաքի օպերատորը ծանրաբեռնված է խելացի ցուցիչներով: Այսպիսով, դուք կարող եք օգտագործել այն հիմքի օբյեկտին մուտք գործելու համար, ինչպես կասեք այդ օբյեկտի պարզ ցուցիչով:
պատասխանել 2:
Ես ձեզ պարզ բառերով կասեմ ...
Օգտագործեք կետային օպերատորը և մուտք գործեք որևէ կառույցի անդամներ
Օգտագործեք սլաքի օպերատորին `ցուցիչի միջոցով մի կառույցի տարրեր մուտք գործելու համար:
Օրինակ, հաշվի առեք հետևյալ կառուցվածքը ………
կառուցվածքային ուսանող {int regNo; char անունը [25]; std;
«Sthail» արժեքը std օբյեկտի անվանման տարրին վերագրելու համար գրեք հետևյալը.
strcpy (լռելյայն անուն ՝ «suhail»);
Եթե ptr_std- ը տիպի ուսանողի օբյեկտի ցուցիչ է, և «suhail» արժեքը նշանակում եք std օբյեկտի անվանման մասին, ապա պետք է գրել հետևյալ ...
strcpy (ptr_std-> անունը, "suhail");
պատասխանել 3:
Սլաքի օպերատորը այսպես կոչված սինթետիկ շաքար է. Մի բան, որն իրականում անհրաժեշտ չէ, բայց ծրագիրը հեշտացնում է տպել և կարդալ: Հայտարարությունը
p-> դաշտ
նույնական է
(* p). դաշտ
եթե p- ն իրականում ցուցիչ է: Եթե դա օբյեկտ է, փոխարենը կազմողը զանգահարում է օպերատորին `փոխարենը>> () մեթոդ: