Ինչպես ասվեց վերևում, վերագրման գործողություններ կատա-րելու ժամանակ կոմպիլյատորը վերագրվող արժեքի տիպը անբացա-հայտորեն ձևափոխում է օբյեկտի տիպի: Բացի այդ ձևափոխություննե-րից C++ համակարգը իր ներկառուցված օբյեկտների միջև սահմանում է նաև ստանդարտ ձևափոխությունների համախումբ տարբեր տիպի օպերանդներ պարունակող թվաբանական արտահայտությունների հա-մար, տարբեր տիպեր ունեցող ֆունկցիայի փաստացի արգումենտի և համապատասխան ֆորմալ պարամետրի համար և այլն:
Եթե թվաբանական արտահայտությունը պարունակում է ամ-բողջթվային և սահող ստորակետով օպերանդներ, ապա տեղի է ունե- նում տիպերի ոչ բացահայտ ձևափոխություն ըստ հետևյալ սխեմայիª
1.Ամբողջ թվերը ժամանակավորապես ձևափոխվում են սահող ստորակետով թվերի (բոլոր օպերանդները բերվում է արտահայտութ-յունում ընդգրկված ամենամեծ տիպի):
2.Կատարվում են թվաբանական գործողությունները:
3.Գործողության արդյունքում ստացվում է սահող ստորակետով թիվ (արտահայտությունում ընդգրկված ամենամեծ տիպի թիվ):
Տարբեր տիպեր ունեցող ֆունկցիայի փաստացի արգումենտի և համապատասխան ֆորմալ պարամետրի համար և այլ օբյեկտների մի- ջև սահմանված ստանդարտ ձևափոխությունների համախմբերը կդի-տարկենք համապատասխան հարցերի ուսումնասիրման ժամանակ:
Սխալներից խուսափելու և ծրագիրը հասկանալի դարձնելու հա-մար պետք է կատարել տվյալների տիպերի բացահայտ ձևափոխություն:
Комментариев нет:
Отправить комментарий