Belge P0122R dan (2016/02/12) Kütüphane Evrim Çalışma Grubu (LEWG)
resmen tipini yeniden adlandırır array_viewiçinspan :
Değişiklik günlüğü
R0'a göre değişiklikler
- Çeşidi değiştirildi ismi nereden önerilmektedir
array_viewiçin spanKona toplantısında LEWG geri bildirimlerini takip.
- [...]
Ayrıca okuyabiliriz:
Standart Üzerindeki Etkisi
Bu öneri saf bir kitaplık uzantısıdır. Standart sınıflarda, işlevlerde veya başlıklarda herhangi bir değişiklik gerektirmez. P0257'debyte önerilen tipe ve tür örtüşme davranışındaki değişikliklere bağlı olabilirse geliştirilebilir .
Bununla birlikte - eğer benimsenirse - bu yeni tip için bazı standart kütüphane işlevlerini aşırı yüklemek faydalı olabilir (bir örnek olabilir copy()).
spanstandart C ++ (C ++ 11) ile uygulanmıştır ve ticari ofis üretkenlik yazılımının yanı sıra C ++ kodu için ticari bir statik analiz aracı içinde başarıyla kullanılmaktadır. Açık kaynak, referans uygulaması https://github.com/Microsoft/GSL adresinde mevcuttur .
Bir sonraki bölümde, bu belgeler salt okunur ve okuma-yazma ( değiştirilebilir ) erişimlerini sunar:
Öğe türleri ve dönüştürmeler
spanValueTypesoyut bir sınıf türü olmayan eksiksiz bir nesne türü olması gereken şablon parametresi aracılığıyla öğe türüyle yapılandırılmalıdır .
spankapsüllediği sıraya salt okunur veya değiştirilebilir erişimi destekler. Salt okunur verilere span<const T>erişmek için, kullanıcı bir tanımlayabilir ve değiştirilebilir verilere erişim için bir span<T>.
[...]
Ayrıca bkz.Kılavuzlar Destek Kitaplığı İncelemesi:span<T> Marius Bancila'dan (Mart 2016) şunları tanımlamaktadır span:
Kuralları Destek Kitaplığı açıklanan türleri ve işlevleri bazılarının bir Microsoft uygulamasıdır C ++ Çekirdek Yönergeleri
tarafından tutulan Standart C ++ Vakfı . GSL tarafından sağlanan türler arasında span<T>eski adıyla array_view<T>.
span<T>işaretçiler (ve boyut sayacı) veya standart kaplar ( std::vectorveya gibi) yerine kullanılması önerilen, sahip olunmayan bir bitişik bellek aralığıdır std::array.