VB.NET- ի տրամաբանական օպերատորները AndAlso- ն և OrElse- ը

VB.NET- ի տրամաբանական օպերատորները AndAlso- ն և OrElse- ը

VB.NET- ը պարունակում է երկու տրամաբանական օպերատոր, որոնք օգնում են ձեր ծրագրավորումը դարձնել… լավ… ավելի տրամաբանական: Նոր օպերատորներն են Ինչպես նաեւ և Այլապես և դրանք շատ բան են ավելացնում հին և կամ օպերատորներին:

Ինչ նորություն կա

AndAlso- ն և OrElse- ն ունեն մի քանի հատկություններ, որոնք ուժեղացնում են ձեր ծածկագիրը այնպես, որ VB- ի նախորդ տարբերակները չհամապատասխանեին: Նրանք առաջարկում են առավելություններ երկու ընդհանուր կարգի.

  • Խնդիրներից խուսափելու համար դուք կարող եք խուսափել տրամաբանական արտահայտության մի մասից:
  • Կարող եք օպտիմիզացնել ծածկագիրը `չկատարելով այլ բարդ բաղադրիչ, քան պահանջվում է:

AndAlso- ն և OrElse- ը գրեթե նման են And and Or- ին, բացի այն, որ արդյունքը երաշխավորվելուց հետո նրանք «կարճ միացում» կստանան:

Օրինակ

Ենթադրենք, որ դուք կոդավորում եք հաշվարկման արդյունքի քննությունը, ինչպիսին է այսպիսին.

Եթե ​​արտահայտությունը VB 6-ում առաջացնում է «բաժանիր զրոյի» սխալ, քանի որ Value3- ը զրո է: (Բայց դրա մասին ավելին տեսնելու համար տե՛ս «Արագ հուշում» բաժնի տրոհումը զրոյով) վերադառնալ ծրագիրը շտապ ռեժիմով շտկելու համար: (Հե !յ, պատահում է):

Եկեք վերստուգենք ծրագիրը ՝ որպես NET ծրագիր, օգտագործելով AndAlso- ն և տեսնենք, թե ինչ է տեղի ունենում:

Փոխվելուց հետո և AndAlso- ին ՝ ծրագիրը գործում է: Պատճառն այն է, որ միացության վերջին մասը Եթե պայման- (արժեք 2 արժեք 3) - իրականում երբեք չի իրականացվում: Երբ դուք օգտագործում եք AndAlso- ն, VB.NET- ը գիտի, որ արտահայտությունը չի կարող հաջողության հասնել այն բանից հետո, երբ որոշվում է, որ պայմանի առաջին մասը `a- ն ավելի մեծ չէ, քան Value1- ը կեղծ է: Այսպիսով, VB.NET- ը դադարում է ճիշտ գնահատել արտահայտությունը հենց այնտեղ: Նմանատիպ օրինակ կարելի է ստեղծել OrElse- ի միջոցով:

Այս վերլուծությունը նաև ենթադրում է, թե ինչպես կարող եք որոշակի արդյունավետություն ավելացնել ձեր կոդին ՝ ճիշտ տրամաբանական արտահայտություն կազմելով: Եթե ​​AndAlso- ն օգտագործելիս, ամենայն հավանականությամբ, կեղծ լինեք ձախ կողմում այն ​​արտահայտությունը, ապա կարող եք կանխել կատարման ցիկլերի օգտագործումը `ճիշտագույն արտահայտությունը գնահատելու համար: Մեկ թեստի դեպքում դա այնքան էլ տարբերություն չէր դնի, որ արժե անգամ մտածել: Բայց եթե ձեր քննությունը գտնվում է ինչ-որ տեսակ հանգույցի մեջ և կատարվում է անգամ հազարավոր զույգերի, ապա դա կարող է մեծ փոփոխություն առաջացնել:

Իմանալով այս երկու նոր VB. NET տրամաբանական օպերատորները կարող են օգնել ձեզ խուսափել շատ նուրբ սխալներից կամ հասնել նուրբ արդյունավետության: