cyanic-selkie/wikianc huggingface dataset:
C++11
Ժամանակավոր օբեկտների հղումներ և տեղափոխման սեմանտիկա
C++ ի ստանդարտով ժամանակավոր օբեկտը, որը առաջացել է արտահայտության հաշվարկի ժամանակ, կարելի է փոխանցել ֆունկցիային, սակայն միայն հաստատուն հղումով։ Ֆունկցիան ի վիճակի չէ որոշել, կարելի է արդյոք դիտարկել փոխանցված օբեկտը ժամանակավոր և փոփոխոթյունների ենթակա (հաստատուն(const) օբեկտը որը նույնպես կարելի է փոխանցել այդ հղումով, չի կարելի փոփոխվել (օրինական))։ Սա խնդիր չէ պարզ կառուցվածքների համար՝ ինչպիսին complex֊ն է, սակայն բարդ կառուցվածք ունեցող տիպերի համար, որոնց անհրաժեշտ է հիշողության հատկացում-ազատում, ժամանակավոր օբեկտների ոչնչացումը և հիմնականի ստեղծումը երկարատև է, այն դեպքում երբ կարելի է ուղղակի անմիջապես փոխանցել ցուցիչը։
C++ 11 ում հայտնվել է հղման նոր տեսակ՝ rvalue-հղում (անգլ․ rvalue reference)։ Այն հայտարարվում է հետևյալ կերպ՝ ։ Վերբեռնման նոր օրենքները թույլ են տալիս օգտագործել տարբեր վերբեռնման ֆուկցիաներ ոչ հաստատուն ժամանակավոր օբյեկտներով, որոնք հայտարարված են rvalue տիպի, և այլ մնացած բոլոր օբեկտների համար։ Նշված նորամուծությունը թույլ է տալիս իրականացնել տեղափոխման սեմանտիկան (Move semantics)։
Օրինակ  -ը հասարակ կազմ է C զանգվածի և փոփոխականի, որը պահպանում է իր չափը։ Ընդօրինակող կոնստրուկտորը    կստեղծի նոր զանգված և կկրկնօրինակի տվյալները։
Տեղափոխման կոնստրուկտորը   կարող է ուղղակի փոխանակվել ցուցիչներով և երկարություն պարունակող փոփոխականներով։ Հայտարարման օրինակ է՝
Ընդհանրացված հաստատուն արտահայտություններ
C++ ում միշտ էլ եղել է հաստատուն արտահայտություն հասկացությունը։ Այսպիսով, 3+4 տեսքի արտահայտությունները միշտ վերադարձրել են նույն արդյունքը, առանց կողմնակի էֆեկտների։ Իրենք իրենցով հաստատուն արտահայտությունները կոմպիլյատորին տալիս են հնարավորություն հարմարավետ օպտիմիզացիաների։
Կոմպիլյատորները հաշվում են նման արտահայտությունների արդյունքը միայն կոմպիլիացիայի փուլում են պահում այն ծրագրում։ Այսպիսով, նմանատիպ արտահայտությունները հաշվում են մեկ անգամ։ Նաև կան դեպքեր, երբ լեզվի ստանդարտը պահանջում է հաստատուն արտահայտությունների օգտագործումը։
Այդպիսի օրինակ է արտաքին զանգվածի տարբերակումը կամ թվարկումները
Վերոհիշյալ կոդը արգելված է C++ ում, քանի որ  պաշտոնապես կոմպիլացիայի փուլում չի հանդիսանում հաստատուն արտահայտություն։ կոմպիլատորին այդ պահին ուղակի հայտնի չէ, որ ֆունկցիան իրականում վերադարձնում է հաստատուն։Կոմպիլատորի անհանգստության պատճառ հանդիսանում է այն, որ ֆունկցիան կարող է ազդել գլոբալ փոփոխականի վրա, աշխատանքի ընթացքում կանչել այլ ոչ հաստատուն ֆունկցիա և այլն։
Այդպիսի բանալի բառը (Անգլերեն. keyword) թույլ է տալիս կոմպիլիատորին հասկանալ և համոզվել, որ  վերադարձնում է հաստատուն։   ի օգտագործումը առաջացնում է ֆունկցիայի աշխատանքի խիստ սահմանափակումներ.
1. այդպիսի ֆունկցիան պետք է վերադարձնի արժեք
2. ֆունկցիայի մարմինը պետք է երևա վերադարձվող արտահայտությունում
3. արտահայտությունը պետք է բաղկացած լինի հաստատուններից և կամ այլ  ֆունկցիաների կանչերից
4.  նշված ֆունկցիան չի կարող օգտագործվել մինչև տվյալ մասի կոմպիլացվելը
Այդպիսի փոփոխականները արդեն անուղղակի համարվում են նշված  բանալի բառով։ Նրանցում կարող են պարունակվել միայն հաստատուն արտահայտությունների արդյունքներ կամ դրանց կոնստրուկտորներ։
Օգտագործողի կողմից նշված տիպից հաստատուն արժեքի նախագծման անհրաժեշտության դեպքում, այդպիսի տիպերի կոնստրուկտորները կարող են ներկայացված լինել  ի
օգնությամբ։ Հաստատուն արտահայտությունների կոնստրուկտորները նման են հաստատուն ֆունկցիաներին, և պետք է կոմպիլացված լինի մինչ կոմպիլիացիայի այդ փուլին հասնելը։ Այդպիսի կոնստրուկտորը պետք է լինի դատարկ, և սկզբնարժեքավորի իր տիպի անդամներին միայն հաստատուններով։
Պարզ տվյալների սահմանման փոփոխություններ
Ստանդարդ C++-ում միայն որոշակի օրենքներն բավարարող կառուցվածքներն են կարող համարվել պարզ տվյալների տիպ։Գոյություն ունեն ծանրակշիռ պատճառներ սպասելու այդ օրենքների ընդլայմանը, այն պատճառով, որ ավելի մեծ քանակի տրպեր դիտարկվի պարզ ։ Այդ օրենքներին բավարարող տիպերը կարող են օգտագործվել օբեկտային շերտի իրականացման մեջ C ի հետ համաձայնեցված(совместимого)։ սակայն C++ 03-ում այս օրենքների ցուցակը չափազանց խիստ է։
C++ 11 ը կթուլացնի մի քանի օրենքներ, որոնք վերաբերվում են պարզ տվյալների
տիպի սահմանմանը։
Դասը դիտարկվում է որպես պարզ տվյալների տիպ, եթե այն ՏՐԻՎԻԱԼ Է ստանդարտ դասավորությամբ  և եթե նրա բոլոր ոչ ստատիկ անդամ-տվյալները նույնպես հանդիսանում են պարզ տվյալների
տիպի :
Տրիվիալ Դաս - այն դասն է որը՝
1. պարունակում է տրիվիալ լռելյան (<>default) կոնստրուկտոր
2. չի պարունակում ոչ տրիվիալ ընդորինակող կոնստրուկտոր
3. չի պարունակում ոչ տրիվիալ տեղափոխման կոնստրուկտոր
4. չի պարունակում ոչ տրիվիալ ընդորինակող վերագրման օպերատոր (copy assignment operator)
5. չի պարունակում ոչ տրիվիալ տեղափոխման վերագրման օպերատոր (move assignment operator)
6. պարունակում է տրիվիալ դեստրուկտոր
Ստանդարտ դասավորությամբ դասը-դա դասն է, որը՝
1. չի պարունակում ոչ ստատիկ անդամ-տվյալներ, որոնք ունեն ունեն ոչ ստանդարտ դասավորությամբ դասի տիպ(կամ այդպիսի տիպի զանգված) կամ հղման տիպ
2. չի պարունակում վիրտուալ ֆունկցիաներ
3. չի պարունակում վիրտուալ հիմքային(base) դաս
4. ունի միևնույն հասանելիության տեսակը բոլոր ոչ ստատիկ անդամ-տվյալների համար
5. չի պարունակում ոչ ստանդարտ դասավորությամբ հիմքային դաս
6. չի հանդիսանում դաս, որը միառժամանակ պարուանկում է ժառանգված և չժառանգված ոչ ստատիկ անդամ-տվյալներ, կամ միարժամանակ մի քանի հիմքային դասերից ժառանգված ոչ ստատիկ անդամ-տվյալներ
7. չի պարունակում հիմքային դասեր նույն տիպի ինչ առաջին ոչ ստատիկ անդամ-տվյալներ(եթե այդպիսիք կան)
Արտաքին կաղապարներ
Ստանդարտ C++ ում կոմպիլիատորը պետք է инстанцировать կաղապարը ամեն անգամ, երբ հանդիպում է в единице трансляции его полную специализацию.
Դա կարող է զգալիորեն մեծացնել կոմպիլիացիայի ժամանակը, մանավանդ այն ժամանակ, երբ կաղապարը инстанцирован նույն պարամետրերով տրանսլիացիայի միավորների մեծ թվում։ Ներկայումս չկա ձև C++ ին հայտնելու, որ инстанцирования չպետք է լինի։
C++11 ում ներմուծվել է արտաքին կաղապարների գաղափարը։C++11 ում կա գրելաձև կոմպիլիատորին հասկացնելու, որ կաղապարը պետք է инстанцирован
որոշակի կետում։
C++ ում չկա հնարավորություն արգելելու կոմպիլիատորին инстанцировать կաղապարը Տռանսլիացիայի միավորում։ C++11 ը ուղղակի ընդլայնել է այս գրելաձևը(syntax)
Այս արտահայտությունը ասում է կոմպիլիատորին не инстанцировать տվյալ Տռանսլիացիայի միավորում։
Օգտագործման հարմարավետության բարձրացում
Այս հնարավորությունները նախատեսված են լեզվի օգտագործումը հեշտացնելու համար։
Սկզբնարժեքավորման ցուցակներ
Սկզբնարժեքավորման ցուցակների հասկացությունը C++ եկել է C ից։ Գաղփարը կայանում է նրանում, որ կառուցվածքը կամ զանգվածը կարող են ստեղծված լինել արժեքների ցուցակի միջոցով, ընդորում կառուցվածքի անդամների հերթականությամբ։
կառուցվածքի զանգվածի և կառուցվածքի մեջ ներդրված կառուցվածքի ժամանակ։
C++ ը նաև պարունակում է կոնստրուկտորներ, որոնք կարող են պարունակել օբեկտների սկզբնարժեքավորման ընդհանուր մասը։
C++ ի ստանդարտը թույլ է տալիս օգտագործել սկզբնարժեքավորման ցուցակներ
կառուցվածքների և դասերի համար այն պայմանով, որ դրանք համապատասխանում են
պարզ տվյալների տիպի(POD) սահմանմանը։
Դասերը, որորնք չեն հանդիսանում POD, չեն կարող սկզբնավորման համար օգտագործել
սկզբնարժեքավորման ցուցակներ, դա վերբերվում է նաև ստանդարտ C++ի կոնտեյներներն, ինչպիսիք են վեկտորը։
C++11 ը կապել է սկզբնարժեքավորման ցուցակների գաղափարը և կաղապար դասը,
անունով։ Դա թույլ է տվել կոնստրուկտորնեին և այլ ֆունկցիաներին ստանալ սկզբնարժեքավորման ցուցակները որպես պարամետրեր։ օրինակ ՝
Նկարագրման այս ձևը թույլ է տալիս ստեղծել  ամբողջ թվերի հաջորդականությունից հետևյալ կերպ՝  ;
Այս օրինակում ցույց է տված սկզբնարժեքավորման ցուցակների հատուկ տիպի կոնստրուկտորների աշխատանքը։ Դասերը, որոնք պարունակում են այսպիսի կոնստրուկտորներ, մշակվում են հատուկ ձևով սկզբնարժեքավորման ժամանակ։
դասը սահմանված է C++ 11 ի ստանդարտ գրադարանում։
Սկզբնարժեքավորման ցուցակը հանդիսանում է հաստատուն՝ ոչ անդամները և ոչ էլ տվյալները ստեղծումից հետո փոփոխման ենթակա չեն։
Քանի որ  ը հանդիսանում է լիարժեք տիպ, այն կարող է օգտագործվել ոչ միայն կոնստրուկտորներում։ Հասարակ ֆունկցիաները կարող են ստանալ սկզբնարժեքավորման ցուցակները որպես արգումենտ(պարամետր)։ Օրինակ՝
Ստանդարտ կոնտեյներները կարող են սկզբնարժեքավորվել հետևյալ կերպ.
Ունիվերսալ սկզբնարժեքավորում
C++ ի ստանդաարտ կան մի շարք խնդիրներ կապված սկզբնարժեքավորման տեսակների հետ։ Գոյություն ունեն տիպերի սկզբնարժեքավորման մի քանի եղանակներ, և ոչ բոլորն են հանգեցնում նույն արդյունքին։ Օրինակ՝ ավանդական սկզբնարժեքավորման կոնստրուկտորի գրելաձևը կարող է հասկացվել կոմպիլիատորի կողմից որպես ֆունցիայի նկարագրում, ուստի պետք է ձեռնարկել լրացուցիչ միջոցներ, որպեսզի կոմպիլիատորը չսխալվի վերլուծության ժամանակ։ Միայն խմբավորման և տիպերը կարող են սկզբնաորվել արգումենտների սկզբնավորուման միջոցով
C++11 ը ներկայացնում է գրելաձև, որը թույլատրում է բոլոր տեսակի օբեկտների միացիալ սկազբնարժեքավորում, սկզբնարժեքավորման ցուցակների գրելաձևի ընդլայման օգնությամբ։
ի սկզբնավորումը աշխատում է այնպես, ինչպես արգումենտներով սկզբնարժեքավորման ժամանակ, այսինքն, յուրաքանչյուր օբյեկտ սկզբնարժեքավորված կլինի սկզբնարժեքավորման ցուցակի իրեն համապատասխանող արժեքի կրկնօրինակով։ Անհրաժեշտության դեպքում կկիրառվի տիպերի անուղղակի փոխարկում(կոնվերտացիա)։Եթե անհրաժեշտ փոխարկումը հնարավոր չէ, կոդը
կհամարվի սխալ։
ի սկզբնարժեքավորման ժամանակ կկանչվի կոնստրուկտոր։
Տրված է հնարավորություն գրելու նմանատիպ կոդ.
Ունիվերսալ սկզբնարժեքավորումը ամբողջովին չի փոխարինում կոնստրուկտորով
սկզբնարժեքավորելու գրելաձևին։ Եթե դասում կա կոնստրուկտոր, որը որպես արգումենտ ստանում է սկզբնարժեքավորման ցուցակ(ИмяТипа(initializer_list);), այն կունենա ավելի բարձր առաջնայնություն համեմատած մյուս օբեկտ ստեղծելու միջոցների։ Օրինակ, C++-ում  պարունակում է, որպես արգումենտ սկզբնարժեքավորման ցուցակ ստացող կոնստրուկտոր
Այս կոդը կբերի որպես արգումենտ սկզբնարժեքավորման ցուցակ ստացող կոնստրուկտորի կանչի, այլ ոչ թե մի պարամետրով կոնստրուկտորի, որը ստեղծում է կոնտեների տրված չափով։ Այդ կոնստրուկտորի կանչի համար օգտագործողը պետք է օգտագործի կոնստրուկտորի կանչի ստանդարտ գրելաձև։
Տիպերի դուրսբերումը
Ստանդարտ C++ փոփոխականը պետք է բացահայտ հայտարարված լինի։ Սակայն կաղապար տիպերի և դրանցով մետածրագրավորման (metaprogramming) ի հայտ գալով, որոշ արտահայտությունների տիպերը, ֆունկցիաների վերադարձվող արժեքները հնարավոր չէ հեշտությամբ նշել։ Դա հանգեցնում է դժվարությունների, փոփոխականների միջանկյալ տվյալները պահելուց։ Երբեմն կարող է անհրաժեշտ լինել իմանալ մետածրագրավորման գրադարանի ներքին միջոցները։
C++11-ը առաջարկում է երկու տարբերակ թեթևացնելու այս խնդիրը։ Առաջին՝ ակնհայտ սկզբնարժեքավորվող փոփոխականը կարող է պարունակել  բանալի բառը։ Դա կբերի նրան, որ փոփոխականը կստեղծվի սկզբնարժեքավորվող արժեքի տիպի։
կլինի այն տիպի, ինչ տիպ կվերադարձնի ֆունկցիան տրված արգումենտների համար։ Այդ տիպը հեշտությամբ դուրս կբերվի կոմպիլիատորի կողմից սեմանտիկ վերլուծության ընթացքում, ինչը ծրագրավորողին կտրվեր մի շարք բարդ հետազոտություններից հետո։ տիպը նույնպես հեշտությամբ սահմանվել, սակայն այն նույն հեշտությամբ կարող էր սահմանվել ծրագրավորողի կողմից։ Դա int տիպն է, այնպիսին ինչչպիսին ամբողջ հաստատունինը։ Բացի դրանից, կոմպիլիացիայի ժամանակ արտահայտությունների տիպերի որոշման համար օգտագործվում է decltype բանալի բառը։ Օրինակ՝ decltype ը շատ ավելի արյունավետ է օգտագործել  ի հետ, որովհետև   հայտարարված տիպը հայտնի է միայն կոմպիլիատորին։ Բացի դրանից, decltype ի օգտագործումը կարող է շատ օգտակար լինել արտահայտություններում, որտեղ օգտագործվում են օպերատորների գերբեռնում և կաղապարների սպեցիալիզացիա։ -ն կարող է օգտագործվել նաև կոդի կոկիկության համար, օրնակ. փոխարեն կարելի է գրել Տարբերույունը ակնհայտ է դառնում, երբ ծրագրավորողը օգտագործում է մեծ թվով կոնտոյներներ, չնայած այն բանին, որ այժմ կա ավելորդ կոդի փոքրացման միջոց՝typedefի օգտագործում։ decltype նշված տիպը կարող է տարբերվել  ով դուրս բերված տիպից
For - հավաքածուի ցիկլ
Ստանդարտ C++-ում տարրերի հավաքածուն վերցնելու համար անհրաժեշտ է բավականին ծավալուն կոդ։ Շատ լեզուներում, օրինակ C-ում, գոյություն ունի միջոց «foreach», որը ավտոմատ կերպով վերցնում է հավաքածուի տարրերը սկզբից մինչև վերջ։ C++-ը տրամադրում է այդպիսի միջոց։ -ի սահմանումը թույլատրում է ավելի հեշտ վերցնել հավաքածուի տարրերը.
Այս տիպի  ցիկլը անգլերեն կոչվում է «range-based for», այն կայցելի հավաքածուի յուրաքանչյուր էլեմենտ։ Այն կիրառելի կլինի C լեզվի զանգվածների, ինիցիալիզատորների ցուցակների և այն բոլոր տիպերի համար, որոնց համար սահմանված են   և   ֆունկցիաները, որոնք վերադարձնում են իտերատորներ։ Ստանդարտ գրադարանի բոլոր կոնտեյներները, որոնք ունեն   զույգը կաշխատեն   ցիկլի հետ հավաքածույով։ Այդպիսի ցիկլը կաշխատի C լեզվի զանգվածների հետ նույնպես, քանի որ C++11 ստանդարտը արհեստականորեն դրանց համար սահմանում է անհրաժեշտ տիպերը (,   և այլն )։
Լյամբդա-ֆունկցիաներ և արտահայտություններ
Ստանդարտ C++ լեզվում գրադարանային ալգորիթմներից օգտվելիս հաճախ կարիք է առաջանում սահմանել ֆունկցիա-պրեդիկատ հենց այնտեղ, որտեղ որ կանչվում է ալգորիթմը։ Լեզվում գոյություն ունեցող միակ մեխանիզմը ֆունկտոր դաս հայտարարելն էր (ֆունկցիայի ներսում սահմանված դասի օբյեկտ փոխանցելը ալգորիթմը արգելում է (Meyers, Effective STL))։ Իրականում այս տարբերակը համարվում է ժամանակատար և բարդացնում է կոդի ընթերցանելիությունը։ Բացի այդ, C++-ի կանոններն արգելում են դրանց օգտագործումը կաղապարներում՝ դրանով իսկ անհնար դարձնում դրանց նպատակային օգտագործումը։ Ակնհայտ լուծում է հանդիսանում C++11 ստանդարտի լյամբդա-ֆունկցիաների և արտահայտությունների կիրառումը։ Լյամբդա-ֆունկցիաները հայտարարվում են հետևյալ կերպ՝
Այս անանուն ֆունկցիայի համար վերադարձվող արժեքի տիպը որոշվում է որպես ։ Վերադարձվող տիպը կարելի է բաց թողնել այն ներկայացված է որպես  : Դա սահմանափակում է լյամբդա-արտահայտությանը մինչև մեկ արտահայտություն։ Վերադարձվող տիպը կարելի է նաև բացահայտ նշել։
Այս դեպքում ստեղծվում է ժամանակվոր  փոփոխական վերադարձվելիք արժեքը հիշելու համար։ Ինչպես և սովորական ֆունկցիաներում, այդ ժամանակավոր փոփոխական չի պահվում կանչերից հետո։ Վերադարձվող տիպը լրիվ բաց է թողնվում, եթե ֆունկցիան արժեք չի վերադարձնում(այսինքն )։ Հնարավոր է օգտագործել նաև հղումներ փոփոխականների վրա, եթե դրանք հայտարարված են նույն տեսանելիության տիրույթում ինչ լյամբդա-ֆունկցիան։ Սա ցույց կտա ցուցակի բոլոր էլեմենտների գումարը։ Քանի որ  փոփոխականը հղվում է ստեկի մեջ գտնվող այլ փոփոխականի վրա այդ իսկ պատճառով այն կարող է փոփոխել դրա արժեքը։ Փոփոխականները կարող են փոխանցվել ֆունկցիային առանց  նշանի, սակայն այդ դեպքում դրանց արժեք ֆունկցիան կկրկնորինակի։ Լյամբդա ֆունկցիաները կարող են օգտագործել իրենց տեսանելիության տիրույթում գտնվող փոփոխականները առանց ականհայտ հղումների։ Ներքին ռեալիզացիաները կարող են տարբերվել, բայց ենթադրվում է, որ լյամբդա ֆունկցիան կպահպանի ցուցիչը ֆունկցիյա ստեկի վրա, այլ ոչ թե կաշխատի ստեկի առանձին փոփխականների հղումների հետ։ Եթե  փոխարեն օգտագործվի , ապա բոլոր փոփոխականները կկրկնորինակվեն և լյամբդա ֆունկցիան հնարավոր կլինի օգտագործել անկախ ընթացիկ փոփոխականների հայտարարման տիրույթից։ Լռելիությամբ տվյալները փոխանցելը կարելի է լրացնել առանձին փոփոխականների ցուցակներով։ Եթե անհրաժեշտ է բոլոր արգումենտները փոխանցել հղումով իսկ մեկը ոչ՝ կարելի է վարվել հետևյալ կերպ. Այս դեպքում կփոխանցվի հղումով իսկ   արժեքով։ Եթե լյամբդա ֆունկցիան սահմանված է դասի մեթոդի մեջ ապա այն այդ դասի համար ընկեր (անգլ. friend) ֆունկցիա է։ Այդպիսի ֆունկցիաները կարող են դիմել դասի ներքին անդամներին և օգտագործել դասի տիպի հղումներ։ Սա կաշխատի միայն այն դեպքում լյամդա ֆունկցիան ստեղծվել է  դասի մեթոդում։ Հատուկ ձևով սահմանված է  ցուցիչի հետ աշխատանքը։ Այն պետք է բացահայտ նշվի լյամբդա ֆունկցիայում։ կամ  օգտագործումը ինքնստինքյան   ցուցիչը դարձնում է հասանելի։ Լյամբդա ֆունկցիայի տիպը կախված է դրա ռեալիզացիայից, այդ տիպի անունը հայտնի է միայն կոմպիլիատորին։ Եթե անհրաժեշտություն կա լյամբդա ֆունկցիան փոխանցել որպես արգումնետ, ապա այն պետք է լինի կաղապար տիպի կամ պահպանված լինի օգտագործելով -ը։ Օգտագործելով   բանալի բառը (անգլ. keyword) կարող ենք հիշել լյամբդա ֆունկցիան։
Ֆունկցիաների գրելաձևի այլընտրանքային մոտեցում
Որպեսզի  արտահայտությունը ունենա նույն տիպը ինչ ,   և   արգումնենտերը փոխանցելու դեպքում, C++11 լեզվում կարելի է օգտագործել հետևյալ հայտարարությունը.
Իհարկե ավելի լավ կլիներ  և   փոխարեն օգտագործել համապատասխանաբար   և  ։ Սակայն հաջորդ տարբերակում,
որը ավելի պարզ է թվում,  և   իդենտիֆիկատորները օգտագործվում են   օպերանդում և չեն կարող օգտագործվել, որպես պարամետրներ որոնք ավելի ուշ են հայտարարվելու։ Այս խնդրի լուծման համար C++11 ստանդարտում նախատեսված է ֆունկցիաների գրելաձևի նոր տարբերակ, որում կարելի է ֆունկցիայի վերադարձվող տիպը նշել վերջում։
Պետք է նշել, որ վերոհիշյալ գրելաձևը որոշ դեպքերում բավականին երկար է ստացվում։
Նոր գրելաձևը կարելի է օգտագործել ավելի պարզ հայտարարություններում ու նկարագրություններում։
բանալի բառի (Անգլերեն. keyword) օգտագործումը նշանակում է որ վերադարձվող տիպը ավելի ուշ է նշվելու, այլ ոչ թե ավտոմատ կերպով դուրս է բերվելու։
Օբյեկտների կոնստրուկտորների բարելավում
Ստանդարտ C++ թույլ չի տալիս դասի մի կոնստրուկտորի միջից այդ նույն դասի այլ կոնստրուկտոր կանչել, կոնստրուկտորները պետք է իրենց մեջ ինիցիալիզացնեն դասի բոլոր տվյալները, կամ դա անեն դասի այլ մեթոդի օգնությամբ։ Ոչ կոնստանտ տվյալները չեն կարող ինցիալիզացվել հենց հայտարարման պահին։ C++11 օգնում է ազատվել այս խնդիրներից։ Նոր ստանդարտը թույլ է տալիս դասի մի կոնստրուկտորից նույն դասի այլ կոնստրուկտոր կանչել։ Սա թույլ է տալիս գրել կոնստրուկտորներ, որոնք կրկնում են այլ կունստրուկտորների վարքը, առանց ավելորդ անգամ կոդը կրկնելու։ Օրինակից պարզ է, որ  առանց արգումենտների կոնստրուկտորը կանչում է նույն դասի մեկ այլ կոնստրուկտոր, որի միջոցով ինիցիալիզացնում է   փոփոխականը։ Նույն արդյունքին կարելի է հասնել, եթե 42 արժեքը փոփոխականին տրվեր հենց սահմանման ժամանակ։ Դասի ցանկացած կոնստրուկտոր number փոփոխականին կվերագրի 42 արժեքը, եթե հենց ինքը ուրիշ արժեք չվերագրի։ Հատկանշական է, որ C++03 համարում էր օբյեկտը կառուցված, եթե կոնստրուկտորը ավարտել է աշխատանքը, ապա C++11 գոնե մեկ դելեգատ կոնստրուկտորի աշխատանքի ավարտից հետո մնացած կոնստրուկտորները կաշխատեն արդեն ամբողջովին կառուցված օբյեկտի վրա։ Անկախ դրանից ժառանգ դասի կոնստրուկտորները կաշխատեն միայն ծնող դասի բոլոր կոնստրուկտորների ավարտից հետո։
Վիրտուալ ֆունկցիաների բացահայտ վերասահմանում
Հնարավոր է, որ վիրտուալ մեթոդը փոփոխվի ծնող դասում, կամ ի սկզբանե սխալ գրված լինի ժառանգ դասի մեջ։ Նման դեպքերում այդ ֆունկցիան ժառանգ դասի մեջ չի փոխարինի ծնող դասի համապատասխան ֆունկցիային։ Հակառակ դեպքում, եթե ծրագրավորողը ճիշտ չնշի ֆունկցիաները ժառանգ դասերում, ապա մեթոդը սխալ կիրականացվի ծրագրի կատարման ընթացքում։ Օրինակ. Այստեղ ժառանգ դասում սահմանված ֆունկցիայի մեջ թույլ է տրված սխալ, որի հետևանքով այդ ֆունկցիան չի վերասահմանում ծնող դասի, և համապատասխանաբար չի կանչվի պոլիմորֆիկ կերպով ցուցչի կամ հղման միջոցով որը ցուցում/հղվում է բազային օբյեկտի վրա։ C++11 ստանդարտում նոր հնարավորություն կա նման թերությունները հայտնաբերել կոմպիլյացիայի ընթանցքում։ Հակառակ համատեղելիության պատճառով այս հնարավորությունը համարվում է ընտրովի։ Օրինակ. Ֆունկցիայի մոտ  բանալի բառի առկայությունը նշանակում է, որ այն հետագայում չի կարելի վերասահմանել։ Բացի այդ   բանալի բառի միջոցով սամանված դասից չի կարելի ժառանգել։
Զրոյական ցուցիչի հաստատուն
Դեռևս 1972 թ. C լեզվում  կոնստանտը երկու դեր ուներ՝ ամբողջ թիվ և զրոյական ցուցիչ։ Այդ անորոշության լուծումներից մեկը   մակրոսն է, որը սովորաբար (0) կամ   է։ C++ այս մասով տարբերվում է C-ից նրանով, որ միայն  -ն կարող է հանդես գալ որպես զրոյական ցուցիչ։ Դա ֆունկցիաների գերբեռնման ժամանակ բերում է խնդիրների։
Եթե  սահմանված է , ապա   կանչի դեպքում կաշխատի   ֆունկցիան, այլ ոչ թե  , ինչպես կարելի էր ենթադրել կոդի հպանցիկ դիտումից հետո, որտեղ, ամենայն հավանականությամբ ծրագրավորողը նկատի էր ունեցել հենց   ֆունկցիայի կանչը։
C++11 ստանդարտի նորարություններից մեկն այն է, որ զրոյական ցուցիչները նկարագրելու համար ավելացել է  բանալի բառը։ Այս կոնստանտը   տիպի է, որը կարելի է բերել ցանկացած ցուցչային տիպի և համեմատել ցանկացած ցուցչի հետ։ Սակայն այս դեպքում ամբողջ տիպի բերում չի կատարվում։ Բացառություն է կազմում միայն   տիպը։
Հակադարձ համատեղելիության ապահովման համար  կոնստանտը նույնպես կարելի է օգտագործել, որպես զրոյական ցուցիչ։
Խիստ տիպայնացված թվարկումներ
Ստանդարտ C++-ում թվարկումները(Անգլերեն. enumeration) տիպերի բերման տեսանկյունից ապահով չեն։ Իրականում նրանք ներկայացված են ամբողջ թվերի տեսքով, անկախ նրանից, որ տարբեր թվարկումները իրականում տարբեր տիպեր են։ Դա իր հերթին թույլ է տալիս երկու տարբեր թվարկումների միջև համեմատություններ անել։ Միակ հնարավորությունը, որ տրամադրում է C++03-ը, թվարկումների ապահովության համար՝ չի թույլատրվում ամբողջ տիպերից կամ թվարկումներից անուղղակի տիպերի բերումը այլ թվարկումների։ Բացի այդ հիշողության մեջ (ամբողջ տիպերի տեսքով) ներկայացումը կախված է իրականացումից և ապահով չէ։ Վերջապես թվարկումները ունեն ընդհանուր տեսանելիության տիրույթ, որ թույլ չի տալիս տարբեր թվարկումների մեջ լինեն նույն անունով անդամներ։
C++11 տրամադրում է հատուկ տեսակի դասակարգումներ նման տիպի թվարկումների համար, ինչը ազատում է վերոհիշյալ թերություններից։ Նման դեպքերում օգտագործում են  հայտարարությունը (ինչպես նաև կարելի է օգտագործել   հայտարարությունը)։
Այսպիսի թվարկումը տիպերի բերման տեսանկյունից համարվում է ապահով։ Դասային տիպի թվարկումները հնարավոր չէ ոչ բացահայտ կերպով բերել ամբողջ թվերի։ Որպես հետևանք արգելված է թվարկումնեի համեմատումը ամբողջ թվերի հետ։ Այժմ թվարկումները տիպը կախված չեն իրականացումից։ Լռելիությամբ ինչպես վերոհիշյալ դեպքն է՝ տիպը  է, բայց մնացած դեպքերում այդ տիպը կարելի նշել ինքնուրույն հետևյալ կերպ. Թվարկումների անդամների հասանելիության տիրույթը համընկնում է հենց թվարկման հասանոլիության տիրույթի հետ։ Տարբեր էլեմենտներ օգտագործելու համար պետք է նշել նաև նրա տիպը՝, իսկ ուղղակի -ի տիպը որոշված չէ։
Սովորական թվարկումների դեպքում C++11 թույլ է տալիս նշել տեսանելության տիրույթը և տիպը։ Տվյալ օրինակում թվարկման էլեմենտները սահմանված են  տեսանելիության տիրույթում, բայց համատեղելիության ապահովման նպատակով դրանք հասանելի են նաև ընդհանուր տեսանելիության տիրույթում։ Ինչպես նաև C++11 ստանդարտում թվարկումները կարելի է նախօրոք հայտարարել, ինչը նախորդ և ոչ մի ստանդարտում չէր թույլատրվում, քանի որ թվարկման չափը ուղղակիորեն կախված է իր անդամներից։ Նման հայտարարություններից կարելի է օգտվել միայն թվարկման չափը նշելու դեպքում։
Անկյունավոր փակագծեր
C++-ի ստանդարտ շարահյուսական վերլուծիչները (անգլ. parser) « » կոմբինացիան ընդունում են որպես աջ տեղաշարժի օպերատոր։ Ներդրված կաղապար արգումենտների դեպքում բացատանիշի բացակայությունը այդ փակագծերի միջև համարվում է սխալ։ C++11-ը լավացնում է վերլուծիչի վարքը այդպիսի դեպքերում, այսինքն մի քանի աջ եզրային փակագծերը կընկալվեն որպես կաղապար արգումենտների ցուցակի ավարտ։
Նկարագրված վարքը կարելի է ձևափոխել ի օգուտ նախկինի՝ կլոր փակագծերի միջոցով։ Ինչպես երևում է վերը նշված օրինակում այս փոփոխությունը այնքան էլ համատեղելի չէ նախկին ստանդարտի հետ։
Բացահայտ տիպերի բերման օպերատորներ
C++ Ստանդարտ-ում գոյություն ունի  բանալի բառը, որը կարելի է օգտագործել մեկ պարամետրներով կոնստրուկնորների հետ, որպեսզի դրանք չոգտագործվեն ոչ բացահայտ տիպերի բերման ընթացքում։ Սակայն դա չի ազդում իրական տիպերի բերման օպերատորների վրա։ Դասերը կարող են ունենալ   օպերատորը, և այդ դեպքում ճիշտ կլինի   արտահայտությունը։ Խնդիրն այն է, որ այդ օպերատորը չի պաշտպանում այլ չկանխատեսված ձևափոխումներից։ Քանի որ C++-ում   համարվում է մաթեմատիկական տիպ, այդ իսկ պատճառով այն կարելի բերել ցանկացած թվի տիպի։ C++11 ստանդարտում  բանալի բառը կիրառելի է նաև ձևափոխման օպերատորների հետ։ Ինչպես կոնստրուկտորների դեպքում այնպես էլ այստեղ այն պաշտպանում է չնախատեսված ձևափոխումներից։ Սակայն այն դեպքերում, երբ ծրագիրը ակնկալում է   տիպ, ձևափոխությունը տեղի է ունենում։
Կաղապարներում typedef
C++ ստանդարտում հնարավոր է  բառի միջոցով ստեղծել հոմանիշներ այլ տիպերի համար, այդ թվում օգտագործվում է կաղապարների համար՝ հոմանիշների միջոցով վերցնելով նրա բոլոր պարամետրերը։ Բայց հնարավոր չէ ստեղծել կաղապարի հոմանիշ։ Օրինակ.
Սրա կոմպիլյացիան չի անցնի։
C++11-ում ավելացվել է այս հնարավորությունը հետևյալ կերպ.
C++ 11-ում  հրահանգով հնարավոր է ստեղծել կեղծանուն տվյալների տիպերի համար։
Հեռացնել սահմանափակումները union-ի միջոցով
Նախորդ C++ ստանդարտներում գոյություն ուներ մի շարք սահմանափակումներ, միավորումներում (անգլ. union) դասերի տիպեր օգտագործելիս։ Հաճախ միավորվող օբյեկտները չեն կարող պահել ոչ դատարկ կոնստրուկտորները։ C++ 11-ը բացառում է այդպիսի սահմնափակումների մի մասը։ Ահա մի պարզ օրինակ, որը թույլ է տալիս C++ 11։ Փոփոխությունները չեն ազդում առկա կոդի վրա, քանի որ այն միայն փոքրացնում են տվյալ սահմանափակումները։
Հատուկ իմաստ կրող անուններ
և  իդենտիֆիկատորները հատուկ իմաստ ունեն այն դեպքերում, միայն որոշակի դեպքերում։ Մնացած դեպքերում դրանք օգտագործվում են ինչպես սովորական իդենտիֆիկատորներ (ինչպես օրինակ փոփոխականի կամ ֆունկցիյաի անունը)։
Ընդլայնված ֆունկցիոնալություն
Այս բաժնում սահմանվում են նոր հնարավորություններ, որը առաջ հնարավոր չէր օգտագործել կամ էլ պետք էր հատուկ հնարավորություններով գրադարաններ։
Անորոշ քանակի պարամետրերով կաղապարներ
փոփոխականները կարող են նաև բացակայել․  նույնպես կաշխատի։ Որպեսզի կաղպարն առանց փոփոխականի տեղի չունենա, ապա պետք է գրել հետևյալ կերպ.
Փոփոխվող արգումենտների քանակով կաղապարները կիրառելի են նաև ֆունկցիաների դեպքում, ինչը թույլ է տալիս օգտագործել դրանք անորոշ քանակի արգումենտներ ունեցող ֆունկցիաներում(օրինակ՝ printf), և ոչ պարզ օբյեկտներ կառուցելու ընթացքում։
այս օպերատորը այստեղ ունի երկու իմաստ։ -ից ձախ գտնվելու դեպքում օպերատորը նշանակում է, որ պարամետրերը վերջավոր են։ Օգտագործելով վերջավոր պարամետրերի գաղափարը կաղապարում հնարավոր է հայտարարել 0 և ավելի փոփոխականներ։ Վերջավոր պարամետրերը օգտագործում են ոչ միայն տիպերի անուները փոխանցելու համար։   այս օպերատորը աջից իր հերթին թույլ է տալիս պարամետրերը հանդես գան առանձին փոփոխականներ ( ինչպես ցույց է տրված ներքևի օրինակում  -ի համար) ։
Կաղապարները փոփոխվող արժեքների դեպքում նույնպես հնարավոր է օգտագործել ռեկուրսիվ։ Այդպիսի օրինակ է  ֆունկցիան.
Այս կաղապարը հանդիսանում է ռեկուրսիվ։ Ուշադրություն դարձրեք, որ  ֆունկցիան կանչում է արդյունքը ինքն իր կամ բազային  -ի այն դեպքում երբ  -ն դատարկ է։ Չկա այնպիսի պարզ մեխանիզմ որով հնարավոր կլինի շրջանցել կաղապարների փոփոխվող արժեքների պարամետրերը։ Չնայած այդ բանին օգտագործելով փոփոխականների օպերատորը թույլ է տալիս շրջանցել այդ խնդիրը։ Օրինակ դասը հնարավոր է ներկայացնել հետևյալ կերպ.
Հետևյալ կոդը իրականացվում է փոփոխականների վերաբաշխումը ըստ ցուցակի  կոնստրուկտորում։  գրելաձևը թույլ է տալիս թափանցիկ վերահղել փոփոխականները կոնստրուկտորում, առանց հաշվի առնելու   հատկանիշը։ Ֆունկցիան իքնաբերաբար դառնում է ցուցիչ   որպեսզի ապահովի հիշողության կորստից։
Հնարավորություն կա համատեղել փոփոխականների թիվը հետևյալ կերպ։
Նոր տողային լիտերալներ
տիպի չափը այնքան փոքր է, որ կարողանա իր մեջ պահել 8 բիտ հիշողությամբ UTF-8 տիպի ցանկացած սիմվոլ, և այնքան մեծ որ կարողանա իր մեջ պահել ծրագրի կատարման ընթացքում ստացված ցանկացած սիմվոլ։
Գոյություն ունի երեք տիպի Unicode կոդավորում, որը աջակցում է C++11 ստանդարտը, դրանք են. UTF-8, UTF-16 և UTF-32 ։ Որպես լրացում վերոնշյալ փոփոխություններին C++11 ստանդարտում ավելացել են ևս երկու սիմվոլային տիպ՝  և  ։ Նրանք օգտագործվում են   և   սիմվոլները պահելու համար։ Ներքևում ցույց է տրված թե ինչպես ստեղծել լիտերալներ այս բոլոր կոդավորումների համար։
Առաջին տողում գրվածը սովորական : Երկրորդ տողինը — . Երրորդ տողինը —. Լիտերալների կառուցման համար ստանդարտ <span style="color:blue"Unicode -ում, հաճախ անհրաժեշտ է լինում Unicode –ի կոդը դնել հենց տողում։ Դրա համար C++11-ը առաջարկում է հետևյալ գրելաձևերը.
\u-ից հետո պետք է թվերը լինեն տասնվեցական, պետք չէ օգտագործել պրեֆիքս 0x։ Ինդետիֆիկատոր \u նշանակում է 16-բիտային Unicode կոդ, իսկ 32-բիտային կոդով գրելու համար օգտագործվում է \U և 32-բիտային տասնվեցական թիվ։ Հնարավոր է գրել միայն ճշգրիտ Unicode կոդեր։ Օրինակ, կոդը այս ֆորմատով U+D800–U+DFFF արգելվում է, քանի որ նրանք վերապահված են փոխնակ զույգերի UTF-32 -ում։ Երբեմն օգտակար է լինում խուսափել տողերի հետ ձեռքով աշխատել, հատկապես երբ օգտագործվում է լիտերալ XML տիպի ֆայլը, սկրիպտային ծրագրավորման լեզուներում, կամ կանոնավոր արտահայտություններում։ Այդ նպատակով C++11-ը ստանդարտը աջակցում է «հում(сырые)» տողային լիտերալներին։
Առաջին դեպքում ամեն ինչ գտնվում է այս սիմվոլների մեջ "( և )", որը մասն է կազմում տողի։ Սիմվոլները " և \ պետք չէ էկրանին ցուցադրել։ Երկրորդ դեպքում ( սկիզբն է տողի և այն վերջանում է) -ով։   տողը կարող է ունենալ 0-ից մինչև 16 երկարությամբ սիմվոլներ։ Այս տողը չի կարող պարունակել բացատանիշեր, ղեկավարվող սիմվոլները, '(', ')', կամ այս սիմվոլը '\' Օգտագործել այս տող-անջատիչները հնարավոր է օգտագործել ')' այս սիմվոլը «հում(сырые)» >> տողային լիտերալներում։ Օրինակ R"delimiter  համարժեք է  :
«հում(сырые)» տողային լիտերալները կարող են միավորվել ընդյլանված շարքի լիտերալների հետ ( պրեֆիքս L"") կամ ցանկացած այլ պրեֆիքս որը  –ի լիտերալ է։
Տիպ
Ամբողջ տիպ -ը նշված է C99 ստանդարտում և այն լայնորեն օգտագործվում է C++-ում, վերջապես այն հաստատել են C++ 11 ատանդարտում։
Ստատիկ ախտորոշում
C++11-ը ունի երկու ձև ստատիկ ախտորոշման.
Աշխատանքը -ի հետ դասի տարրերի հետ առանց օբյեկտ ստեղծելու
C++ 03 ստանդարտը թույլ էր տալիս օգտագործել -ը պարզ տիպերի և օբյեկտների համար։Բայց հետևյալ գրառումը չէինք կարող։
Հեշ-աղյուսակներ
Երկար ժամանակ է, որ STL-ի ստանդարտի մեջ չէին ընդգրկվում  և   դասերը, այնինչ դրանք փաստացի իրականացվում էին գրեթե բոլոր կոմպիլյատորներում։ C++11 ստանդարտում այս դասերն ընդգրկված են ստանդարտի մեջ և հանդես են գալիս   և   անուներով։ Չնայած, ըստ հեշ-աղյուսակների էությանը ստանդարտը շատ թույլ չի տալիս մանևրելու, անուները նման են C++֊ի ոճին. ոչ թե «ինչպես են նրանք իրականացրել», և «ինչ են իրենցից ներկայացնում»։
Կանոնավոր արտահայտություններ
Նոր գրադարանը, որը սահմանված է  վերնագրային ֆայլում, ներառում է մի քանի նոր դասեր.
այս ֆունկցան օգտագործում են փնտրելու համար։ Գտնելու և փոխելու համար օգտագործվում է  ֆունկցիան։ ֆունկցիան վերադարձնում է տողը հետո փոխարինում։ Ալգորիթմներ  և   ստանում են մուտք գործել կանոնավոր արտահայտություններ և տողեր, վերադարձնում են արդյունքը էկզեմպլիառի տեսքով  :
Օրինակ օգտագործենք.
Ռոդրիգո Էռնանդես
Ռոդրիգո Էռնանդես Կասկանտե (Rodrigo Hernández Cascante, ), առավել հայտնի որպես Ռոդրի կամ Ռոդրիգո, իսպանացի պրոֆեսիոնալ ֆուտբոլիստ։ Ներկայումս հանդես է գալիս Մանչեսթեր Սիթիի և Իսպանիայի ազգային հավաքականի կազմում։ Խաղում է հենակետային կիսապաշտպանի դիրքում ։
Վիլյառեալ
Ֆուտբոլիստի կարիերան Ռոդրին սկսել է Ատլետիկո Մադրիդում, սակայն 2013 թվականին նա հեռացվեց Ատլետիկոյի ակադեմիայից թույլ ֆիզիկական տվյալների պատճառով, ինչից հետո իսպանացին միացավ Վիլյառեալին ։ Իր պրոֆեսիոնալ դեբյուտը Ռոդրին նշեց 2015 թվականի դեկտեմբերի 17-ին՝ Իսպանիայի գավաթի Հուեսկայի դեմ խաղում ։ Առաջին հանդիպումը Լա Լիգայում անցկացրեց 2016 թվականի ապրիլի 17-ին՝ փոխարինելով Դենիս Սուարեսին Ռայո Վալեկանոյի դեմ խաղում ։ Իր առաջին գոլը պրոֆեսիոնալ կարիերայում խփեց 2016 թվականի նոյեմբերի 3-ին՝ Եվրոպայի Լիգայի Անկարասպորի դեմ խաղում ։
2017-18 մրցաշրջանում Ռոդրին դարձավ Վիլյառեալի հիմնական թիմի խաղացող։ 2017 թվականի դեկտեմբերի 4-ին նա երկարաձգեց իր պայմանագիրը ակումբի հետ մինչև 2022 թվականը ։ Իր առաջին գոլը Լա Լիգայում խփեց 2018 թվականի փետրվարի 18-ին՝ Էսպանյոլի դեմ խաղում ։ Վիլյառեալի առաջին թիմի կազմում Ռոդրին անցկացրեց 84 հանդիպում՝ դառնալով 2 գոլի և 6 գոլային փոխանցման հեղինակ։
Ատլետիկո Մադրիդ
2018 թվականի մայիսի 24-ին Ռոդրին 5 տարվա պայմանագիր կնքեց Ատլետիկո Մադրիդի հետ ։ Ակումբը նրա համար վճարեց 20 միլիոն եվրո և ևս 5 միլիոն բոնուսների տեսքով  ։ Իր դեբյուտը նշեց օգոստոսի 15-ին՝ ՈՒԵՖԱ Սուպեր գավաթի Ռեալ Մադրիդի դեմ խաղում ՝ օգնելով իր նոր թիմին հաղթել ավելացված ժամանակում և նվաճելով իր առաջին գավաթը ակումբային մակարդակում  ։ Առաջին հանդիպումը Չեմպիոնների Լիգայում Ռոդրին անցկացրեց սեպտեմբերի 18-ին՝ մեկնարկային կազմում խաղադաշտ դուրս գալով Մոնակոյի դեմ խաղում ։ Իր առաջին գոլը Ատլետիկոյի կազմում խփեց նոյեմբերի 10-ին՝ Ատլետիկ Բիլբաոյի դեմ խաղում ։ 2019 թվականի մայիսի 18-ին իսպանացին գոլ խփեց Լևանտեի դեմ խաղում, իսկ հանդիպումն ավարտվեց 2-2 հաշվով ։ Ատլետիկո Մադրիդի կազմում Ռոդրին անցկացրեց 47 հանդիպում՝ դառնալով 3 գոլի և 1 գոլային փոխանցման հեղինակ։
Մանչեսթեր Սիթի
2019 թվականի հուլիսի 3-ին Ռոդրին 5 տարվա պայմանագիր կնքեց Մանչեսթեր Սիթիի հետ  ։ Ակումբը ակտիվացրեց նրա հրաժարագինը՝ տրանսֆերի համար վճարելով 62.8 միլիոն ֆունտ ստերլինգ   ։
Միջազգային կարիերա
Ռոդրին ներկայացրել է Իսպանիան տարբեր տարիքային երիտասարդական հավաքականներում։ 2015 թվականին նա մինչև 19 հավաքականի կազմում հաղթեց Եվրոպայի առաջնությունը ՝ մասնակցելով թիմի բոլոր 5 հանդիպումներին և ընդգրկվելով առաջնության խորհրդանշական հավաքականում ։ 2017 թվականին Ռոդրին Մ21 հավաքականի կազմում մասնակցեց Եվրոպայի առաջնությանը, սակայն Իսպանիան եզրափակչում 1-0 հաշվով պարտվեց Գերմանիային ։
Ակումբային վիճակագրություն
2019 թվականի հուլիսի 21-ի դրությամբ
Միջազգային վիճակագրություն
2019 թվականի հուլիսի 21-ի դրությամբ
Ակումբային
Ատլետիկո Մադրիդ
Արտաքին հղումներ
Կատեգորիա:Ֆուտբոլի կիսապաշտպաններ Կատեգորիա:Իսպանացի ֆուտբոլիստներ Կատեգորիա:Իսպանիայի հավաքականի ֆուտբոլիստներ Կատեգորիա:Վիլյառեալի ֆուտբոլիստներ Կատեգորիա:Ատլետիկո Մադրիդի ֆուտբոլիստներ Կատեգորիա:Մանչեսթեր Սիթիի ֆուտբոլիստներ Կատեգորիա:Պրեմիեր Լիգայի ֆուտբոլիստներ Կատեգորիա:Լա Լիգայի ֆուտբոլիստներ Կատեգորիա:Անգլիայի լեգեոներ ֆուտբոլիստներ Կատեգորիա:ՈՒԵՖԱ Եվրո 2020-ի ֆուտբոլիստներ
Միդ շրջան (այլ կիրառումներ)
Միդ շրջան, կարող է վերաբերել՝
Արխարայի շրջան
Արխարայի շրջան (Архаринский район), մունիցիպալ շրջան Ռուսաստանի Դաշնության Ամուրի մարզում։
Գրյազնուշկա (Իդոլգայի վտակ)
Գրյազնուշկա (Грязнушка), գետ Ռուսաստանում, հոսում է Վոլգոգրադի մարզում։ Գետաբերանը տեղակայված է Իդոլգա գետի ձախ ափին՝ 57 կմ հեռավորության վրա։ Գետի երկարությունը 11 կմ է։
Արխարայի շրջան
Ստեղծվել է 1925 թվականին։ Վարչական կենտրոնը՝ Արխարա ։
Գրյազնուշկա (Իդոլգայի վտակ)
Ջրային գրանցամատյանի տվյալներ
Ռուսաստանի ջրային գրանցամատյանի տվյալների համաձայն՝ պատկանում է Դվոնի ավազանային շրջանին, գետի ջրատնտեսային տեղամասը՝ Մեդվեդիցա գետն է, գետի ենթաավազանը Խոպյոր և Հյուսիսային Դոնցա գետերն են։ Գետավազանը՝ Դոն։
Արխարայի շրջան
Բնակչություն
2010 թվականի մարդահամարի արդյունքներով շրջանում բնակվում էր 18329 մարդ։ Բնակչության խտությունը կազմում էր 1,26 մարդ/կմ²։
Արտաքին հղումներ
Կատեգորիա:Ամուրի մարզ Կատեգորիա:Ռուսաստանի շրջաններ ըստ դաշնային սուբյեկտների
Գրյազնուշկա (Իդոլգայի վտակ)
Արտաքին հղումներ
Կատեգորիա:Ռուսաստանի գետեր
Դանիեի շրջան
Դանիե (قضاء الضنية‎‎), Լիբանանի 25 շրջաններից մեկը, որը մտնում է Հյուսիսային մարզի կազմի մեջ։ Շրջանի վարչական կենտրոնն է հանդիսանում Ալ-Մինիե քաղաքը։ Շրջանի բնակչությունը կազմում է 92 142 մարդ։
Աշխարհագրություն
Շրջանը գտնվում է Լիբանանի հյուսիսարևմտյան մասում և զբաղեցնում է 409 կմ² տարածք։ Հյուսիսում սահամանակից է Աքքարի շրջանին, հարավում՝ Բիշարիի շրջանին, արևելքում՝ Հերմելի շրջանին, արևմուտքում՝ Զղարթայի շրջանին։
Համայնքներ
Շրջանը բաժանվում է 26 համայնքների ։
Կլավեզանա
Կլավեզանա  (իտալ․՝ Clavesana), կոմունա Իտալիայում, Պիեմոնտ մարզի Կունեո գավառում։
Բնակչությունը կազմում է 862 մարդ (2008 թվականի տվյալներով)։ Բնակչության խտությունը 49 մարդ/կմ²։ Տարածքը՝ 18կմ²։ Փոստային ինդեքս՝ 12060։ Հեռախոսային կոդ՝ 0173։
Բնակավայրի հովանավորն է համարվում ատենակալ Սուրբ Աստվածածինը։
Ժողովրդագրություն
'''Բնակչության թվաքանակի փոփոխությունները.
Արտաքին հղումներ
Կատեգորիա:Իտալիայի բնակավայրեր
Անապոլիսի գավառ
Անապոլիսի գավառ (Microrregião de Anápolis), գավառ Բրազիլիայում, մտնում է Գոյաս նահանգի մեջ։ Մտնում է Ալագոաս նահանգի գյուղատնտեսական շրջանի (մարզ) մեջ։ 2006 թվականի տվյալներով բնակչությունը կազմում է 511 952 մարդ։ Տարածքը՝ 8311,934 կմ2։ Բնակչության խտությունը՝ 61,6 մարդ/կմ²։
Գավառի կազմ
Գավառի կազմի մեջ են մտնում հետևյալ համայնքները.
Կատեգորիա:Բրազիլիայի գավառներ Կատեգորիա:Գոյաս նահանգի գավառներ
Տրիպոլիի շրջան
Տրիպոլի (قضاء طرابلس‎‎), Լիբանանի 25 շրջաններից մեկը, որը մտնում է Հյուսիսային մարզի կազմի մեջ։ Շրջանի վարչական կենտրոնն է հանդիսանում Տրիպոլի քաղաքը։ Շրջանի բնակչությունը կազմում է 310 980 մարդ։
Աշխարհագրություն
Շրջանը գտնվում է Լիբանանի հյուսիսարևմտյան մասում և զբաղեցնում է 27 կմ² տարածք։ Հարավում սահամանակից է Զղարթայի և Քուրայի շրջաններին, հյուսիս-արևելքում՝ Աքքարի շրջանին, իսկ արևմուտքում շրջանի ափերն են ողողում Միջերկրական ծովի ջրերը։
Համայնքներ
Շրջանը բաժանվում է 3 համայնքների ։
Կրավանցանա
Կրավանցանա  (իտալ․՝ Cravanzana) կոմունա Իտալիայում, Պիեմոնտ մարզի Կունեո գավառում։
Բնակավայրի հովանավորն է համարվում ատենակալ Պետրոս առաքյալը։
Ժողովրդագրություն
'''Բնակչության թվաքանակի փոփոխությունները.
Արտաքին հղումներ
Կատեգորիա:Իտալիայի բնակավայրեր
Փարիզի գիտության և արդյունաբերության թանգարան
Գիտության և արդյունաբերության թանգարան (Musée de la Cité des sciences et de l'industrie), կենտրոնական թանգարան, տեղակայված Լյա Վիլետ զբոսայգում, փարիզյան գիտության և արդյունաբերության թաղամասում
Փարիզի հինգերորդ թանգարանը՝ ըստ այցելուների թվի ։
Թանգարանի պատմություն
1977 թվականին Ֆրանսիայի նախագահ Վալերի Ժիսկար դ՝Էստեն հայտարարում է Փարիզում նոր գիտական թանգարան կառուցելու ծրագրի մասին։ 1980 թվականին լավագույն ծրագրի մրցույթում հաղթում է ճարտարապետ Ադրիան Ֆայնզիլբերը (Adrien Fainsilber), ովց առաջարկել էր թանգարանի համար օգտագործել Լյա Վիլետ այգում գտնվող հին փարիզյան սպանդանոցների տաղավարները։
Շինարարությունը տևել է 9 տարի, և 1986 թվականի մարտի 13-ին Ֆրանսիայի հաջորդ նախագահ՝ Ֆրանսուա Միտտերանը հանդիավոորությամբ բացեց թանգարանը։
Մշտական հավաքածու
Թանգարանի մշտական հավաքածուն կրում է «Էքսպլորիա» անվանումը և ընդգրկում է տպավորիչ մշտական հավաքածու, բաժանված հետևյալ բաժինների.
Գործնական տեղեկատվություն
Թանգարանը տեղակայված է Փարիզի 19-րդ շրջանում, «30, avenue Corentin-Cariou, 75019 Paris» հասցեով։
Թանգարանը բաց է ամեն օր, բացի երկուշաբթիից։ Աշխատանքային ժամեր՝ 10:00 մինչև 18:00, կիրակի օրերին՝ 10:00 մինչև 19:00։
Արտաքին հղումներ
Կատեգորիա:Փարիզի տեսարժան վայրեր Կատեգորիա:Փարիզի թանգարաններ Կատեգորիա:Գիտության թանգարաններ Կատեգորիա:Արդյունաբերության թանգարաններ
Բելոգորսկի շրջան (Ամուրի մարզ)
Բելոգորսկի շրջան (Белогорский район), մունիցիպալ շրջան Ռուսաստանի Դաշնության Ամուրի մարզում։
Ստեղծվել է 1926 թվականին։ Վարչական կենտրոնը՝ Բելոգորսկ ։
Աշխարհագրություն
Շրջանի տարածքի մակերեսը կազմում է 2600 կմ²։
Բնակչություն
2010 թվականի մարդահամարի արդյունքներով շրջանում բնակվում էր 22707 մարդ։ Բնակչության խտությունը կազմում էր 8,73 մարդ/կմ²։
Արտաքին հղումներ
Կատեգորիա:Ամուրի մարզ Կատեգորիա:Ռուսաստանի շրջաններ ըստ դաշնային սուբյեկտների
Հենրիխ Էմզեն
Հենրիխ Է մզեն (нем. Heinrich Ehmsen, ), գերմանացի գեղանկարիչ և գրաֆիկական նկարիչ։
Կյանք և ստեղծագործություն
Ծնվել է զամբյուղներ պատրաստող վարպետի ընտանիքում։ 1901 թվականին ավարտել է միջնակարգ դպրոցը, որից հետո չորս տարի աշխատել է որպես դեկորատոր, որին զուգահեռ սովորոել է Կիլի կիրառական արվեստի դպրոցում՝ Գերդ Զիմերմաննի դասարանում։ Ստանալով կրթաթոշակ՝ 1906-1909 թվականներին երիտասարդը որպես դեկորատոր սովորել է Դյուսելդորֆի կիրառական արվեստի դպրոցում (Պետեր Բերենսի և Ֆրից Էմկեի հետ)։ 1909 թվականին Գ. Էմզենը իր ուսուցիչ Յոհան Լավերիքսի օգնությամբ դահլիճ է նախագծել Դյուսելդորֆի «Քրիստոնեական արվեստ» ցուցահանդեսի համար։ 1910-1911 թվականներին բնակվել է Փարիզում, որտեղ դասերի է հաճախել Կոլարոսի ակադեմիայում։ Փարիզում Էմզենը հանդիպել է այնպիսի նկարիչների և արվեստի կոլեկցիոներների հետ, ինչպիսիք են Էռնեստո դե Ֆիորիին, Ժյուլ Պասկին և Ալբերտ Ֆլեխտհայմը։ 1911 թվականին տեղափոխվել է Մյունխեն։ Այստեղ Էմզենն անդամագրվել է Կապույտ հեծյալ նկարիչների խմբին։ 1913 թվականին Գ. Էմզենի գործերը ցուցադրվել են Շտուրմի պատկերասրահում, նույն թվականին նրա անհատական ​​ցուցահանդեսը տեղի է ունեցել Էսենի արվեստի թանգարանում։
Առաջին համաշխարհային պատերազմի սկսվելով պայմանավորված՝ Գ. Էմզենը զորակոչվել է և 1914-1918 թվականներին մասնակցել Ֆրանսիայում, Ֆլանդրիայում և Ռումինիայում տեղի ունեցած ռազմական գործողություններին։ Հեղափոխական իրադարձությունների անդամ էր և Բավարիայի Խորհրդային հանրապետության ստեղծման մասնակից։ 1918-1919 թվականներին Մյունխենում տեղի ունեցած իրադարձությունները հետագայում բազմիցս արտացոլվել են Գ. Էմզենի գործերում։ 1926 թվականին Գ.Էմզենի գրաֆիկական գործերը Էմիլ Նոլդեի և Ֆրանս Մազերելի գրաֆիկական աշխատանքների հետ ցուցադրվել են Վիսբադենի արվեստի միությունում։ 1929 թվականին նկարիչը Մյունխենից տեղափոխվել է Բեռլին։ 1930 թվականին միացել է «Կերպարվեստի և ոգու պրոլետարների պայքարի հանձնաժողով» (Kampfkomitee der Künstler und Geistesarbeiter) կազմակերպությանը։ 1932-1933 թվականները վարպետն անցկացրել է ԽՍՀՄ-ում։ Մոսկվայում տեղի է ունեցել նրա գործերի ցուցահանդեսը, սովետական ​​թանգարանները ձեռք են բերել նրա նկարները։
Հայրենիք վերադառնալուց հետո, 1933 թվականի հոկտեմբերի 18-ին, նկարիչը ձերբակալվել է Գեստապոյի կողմից։ Մինչ Գ.Էմզենը կալանքի տակ էր, նրա բոլոր գործերը հանվել են գերմանական թանգարաններից։ Վարպետի ութ նկարները ցուցադրվել են նացիստական ​​քարոզչական ցուցահանդեսում։ Ազատվելուց հետո, սակայն, Գ. Էմզենին 1939 թվականին ընդունել են կայսերական մշակույթի հանձնաժողովի կազմում։ 1940 թվականին, Երկրորդ համաշխարհային պատերազմի բռնկումից հետո, Գ. Էմզենը կրկին զորակոչվել է բանակ ու 1940-1944 թվականներին լեյտենանտի կոչումով ծառայել Ֆրանսիայում, որպես նկարիչ այս երկրի ռազմական հրամանատարի քարոզչական բաժնում։ 1941 թվականին նա կազմակերպել է ֆրանսիացի նկարիչների և քանդակագործների ուղևորություն Գերմանիա (ներառյալ՝ Անդրե Դերեյնը և Մորիս դե Վլամինկը)։ Նույն թվականին նա կազմակերպել է ֆրանսիացի գրողների ուղևորություն դեպի Ուեյմարում տեղի ունեցող բանաստեղծների եվրոպական ժողով։
Պատերազմից հետո Գ. Էմզենը, Կարլ Հոֆերի հետ դարձել է Բեռլին-Շառլոտենբուրգում (Արևմտյան Բեռլին) արվեստի համալսարանի հիմնադիրներից մեկը, որտեղ աշխատել է որպես ազատ արվեստների ամբիոնի վարիչ։ 1949 թվականին ազատվել է աշխատանքից՝ Խաղաղության աջակիցների համաշխարհային կոնգրեսի Փարիզի մանիֆեստը ստորագրելուց հետո (Congrès mondial des partisans pour la paix): 1950 թվականից նկարիչը ղեկավարում է նկարչության դասարանը ԳԴՀ (Բեռլին) արվեստի ակադեմիայում։ 1961 թվականին դարձել է Գերմանիայի Ազգային մրցանակի դափնեկիր։
Գրականություն
Կատեգորիա:Գերմանացի նկարիչներ Կատեգորիա:ԳԴՀ ազգային մրցանակի դափնեկիրներ
Ֆրանսիական հուշարձանների թանգարան
Ֆրանսիական հուշարձանների թանգարան (Musée des monuments français), Փարիզի նախկին թանգարան, հիմնադրվել է պատմաբան-միջնագետ Ալեքսանդր Լենուարի կողմից 1795 թվականին և դարձել է ֆրանսիական երկրորդ ազգային թանգարանը Լուվրից հետո (1793)։ Թանգարանը կարևոր դեր է խաղացել ֆրանսիացիների հասարակական վերաբերմունքի փոփոխության մեջ՝ վերաբացահայտված և բարձր գնահատված մշակութային ժառանգության հուշարձանների նկատմամբ։ 1816 թվականին փակվել է թագավորական հրամանով, թանգարանային նմուշներն այժմ պահվում են Ֆրանսիայի տարբեր վայրերում (մասնավորապես՝ Լուվրում) և արտասահմանում ։
Ֆրանսիական հուշարձանների թանգարանի փակումից 200 տարի անց Լուվրը, միջնադարյան արվեստի թանգարանի հետ համագործակցությամբ, անհետացած թանգարանին նվիրեց «Հեղափոխական թանգարան։ Ալեքսանդր Լենուարի ֆրանսիական հուշարձանների թանգարան» (2016 թվականի ապրիլ-հուլիս) ։
Արտաքին հղումներ
Կատեգորիա:1795 Ֆրանսիայում Կատեգորիա:1795 հիմնադրումներ Կատեգորիա:1795 հիմնադրված թանգարաններ
Վարյա Մելքումյան
Վարյա Մելքումյան (Վարվառա Մելքումյան, ), հայ դերասանուհի, ՀԽՍՀ վաստակավոր արտիստ (1950)։
Կենսագրություն
Վարյա Մելքումյանը ծնվել է Թիֆլիսում։ Վաղ հասակից տարվել է թատրոնով ։ Սովորել է Թիֆլիսի Ստեփան Քափանակյանի ղեկավարած հայկական թատերական ստուդիայում։ Ուսումն ավարտելուց հետո եղել է տեղի հայկական դրամատիկական թատրոնի դերասանուհի։ 1923 թվականին սովորել է Մոսկվայի հայկական դրամատիկական ստուդիայում, այնուհետև կրկին շարունակել է աշխատանքը Թիֆլիսում։ 1930 թվականին տեղափոխվել է Երևան և աշխատանքի անցել Սունդուկյանի անվան ազգային ակադեմիական թատրոնում` որպես դերասանուհի ։
Երկունք Թ դարու
Երկունք Թ դարու՝ պատմական վեպ Ծերենցի հեղինակությամբ։ Հրատարակվել է 1879 թվականին ։
Հայրենիքի ազատագրման համար արաբական խալիֆայության դեմ հանդես է գալիս «ժողովրդի մարդը»՝ Խութեցի Հովնանը։ Նա ոտքի է հանում ժողովրդին՝ վերականգնելու Բագրատունյաց պետականությունը։ Ազնվականությանն անվանելով «բազմագլխյան վիշապ»՝ Հովնանը գտնում է, որ երկրի անկախության գլխավոր հենարանը «ժողովրդոց բանակն» է։ Հովնանի կերպարում հեղինակն ընդգծել է անձնազոհության, անշահասիրության, մարդկային առաքինության բարձր հատկանիշները։ Վեպն ավարտվում է «երկունքից» ծնվող լավատեսությամբ. հաղթում է ժողովուրդը՝ վերականգնելով երկրի անկախությունը։
Ծանոթագրություններ
Կատեգորիա:19-րդ դարի հայ գրականություն Կատեգորիա:1879 վեպեր
Զղարթայի շրջան
Աշխարհագրություն
Շրջանը գտնվում է Լիբանանի հյուսիսարևմտյան մասում և զբաղեցնում է 182 կմ² տարածք։ Հյուսիսում սահամանակից է Տրիպոլիի շրջանին, հարավում՝ Բիշարիի շրջանին, արևելքում՝ Դանիեի շրջանին, արևմուտքում՝ Քուրայի շրջանին։
Համայնքներ
Շրջանը բաժանվում է 31 համայնքների ։
Թեոդորոս Ռշտունի (վեպ)
Թեոդորոս Ռշտունի՝ պատմական վեպ Ծերենցի հեղինակությամբ։ Հրատարակվել է 1881 թ. ։
Զղարթայի շրջան
Ծանոթագրություններ
Կատեգորիա:Լիբանանի շրջաններ Կատեգորիա:Հյուսիսային մարզ (Լիբանան)
Թեոդորոս Ռշտունի (վեպ)
Այս վեպում արտահայտված են Ծերենցի ըմբռնումները՝ կապված հայ ֆեոդալական իշխանության ներքին հակասությունների և պետականության անկման հետ։ Թեման վերցված է VII դարում Հայաստանում տեղի ունեցած պատմական իրադարձություններից։ Ներկայացնելով Բյուզանդիայի և Պարսից պատերազմների թատերաբեմ դարձած Հայաստանի ծանր վիճակը՝ Ծերենցը ժողովրդին կոչ է անում դուրս գալ ընդդեմ բռնակալների։ Ծերենցի քաղաքական երազանքը, հասարակական իդեալները խարսխվում են 18-րդ դարի եվրոպական լուսավորիչների գաղափարների վրա։ Նա երազում էր պետական այնպիսի համակարգ, որտեղ կգործեր հասարակության բոլոր դասերի «բարոյական միասնության» դաշինքը։
Ծանոթագրություններ
Կատեգորիա:19-րդ դարի հայ գրականություն Կատեգորիա:1881 վեպեր
Փոքր Կոլիշլեյ
Փոքր Կոլիշլեյ (Малый Колышлей), գետ Ռուսաստանում, հոսում Ատկարսկովի մարզում։ Գետաբերանը տեղակայված է Մեծ Կոլիշլեյ գետի աջ ափին՝ 27 կմ հեռավորության վրա։ Գետի երկարությունը 26 կմ է։