რა არის სრულყოფილი გადამისამართება C++-ში?
რა არის სრულყოფილი გადამისამართება C++-ში?

ვიდეო: რა არის სრულყოფილი გადამისამართება C++-ში?

ვიდეო: რა არის სრულყოფილი გადამისამართება C++-ში?
ვიდეო: How Does LibC Detect Redirection? Interesting Bug Follow Up. 2024, დეკემბერი
Anonim

ციტირების სესიის განცხადება: თავგადასავლები in Perfect Forwarding : სრულყოფილება გადაგზავნა არის მნიშვნელოვანი C ++0x ტექნიკა აგებულია rvalue მითითებების თავზე. ის საშუალებას აძლევს გადაადგილების სემანტიკას ავტომატურად გამოიყენოს, მაშინაც კი, როდესაც გადაადგილების წყარო და დანიშნულება გამოყოფილია ინტერვენციული ფუნქციის გამოძახებით.

ამის გათვალისწინებით, რა არის სგგდ წინ?

სტდ :: წინ ეს არის დამხმარე ფუნქცია, რომელიც საშუალებას აძლევს არგუმენტების სრულყოფილ გადაგზავნას, როგორც rvalue მინიშნებას, გამოტანილ ტიპებზე, შენარჩუნებული ნებისმიერი პოტენციური მოძრაობის სემანტიკა.

მეორეც, რა არის lvalue და rvalue C++-ში? In C++ ან ღირებულება არის ის, რაც მიუთითებს მეხსიერების კონკრეტულ მდებარეობაზე. მეორე მხრივ, ა rმნიშვნელობა არის ის, რაც არსად არ მიუთითებს. Ზოგადად, rღირებულებები დროებითი და ხანმოკლეა, ხოლო ღირებულებები იცხოვრონ უფრო დიდხანს, რადგან ისინი არსებობენ როგორც ცვლადები. ცვლადს აქვს მეხსიერების სპეციფიკური მდებარეობა, ამიტომ არის ღირებულება.

ანალოგიურად, რა არის გადაგზავნის მითითება?

2.11 გადაგზავნილი ცნობები იდენტიფიკატორის გამოყენებას მის გამოცხადებამდე ეწოდება a წინა მითითება , და იწვევს შეცდომას, გარდა შემდეგი შემთხვევებისა: როდესაც goto განცხადება ეხება განცხადების ეტიკეტს ლეიბლის დეკლარაციამდე. როდესაც სტრუქტურა, კავშირი ან აღრიცხვის ტეგი გამოიყენება მის გამოცხადებამდე.

რა არის უნივერსალური მითითება?

Შემაჯამებელი. ტიპის დეკლარაციაში „ &&“მიუთითებს ან rმნიშვნელობას მითითება ან ა უნივერსალური მითითება – ა მითითება რომელიც შეიძლება გადაწყდეს ან lმნიშვნელობამდე მითითება ან rმნიშვნელობა მითითება . უნივერსალური ცნობები ყოველთვის გქონდეთ ფორმა T&& ზოგიერთი გამოტანილი T ტიპისთვის.