2010-11-20 6 views
7

Bir Yükseltme kitaplığı (On Boost kitaplığının Standart Kitaplığın parçası haline geldiğini okudum) Standart Kitaplığın bir parçası haline gelir - bu, ad alanının artırılmasına veya kodun std ad alanında kalmasına neden olur ? Bu durum söz konusu ise - kodunuzda potansiyel ad alanı çakışması için nasıl bir çözüm olabilirsiniz.Standardın bir parçası - kütüphaneyi güçlendirmek destek alanını kaybedecek ve std'ye taşınacak mı?

Şerefe.

cevap

11

Standartta yapılan Boost kitaplıklarındaki öğeler elbette std ad alanına dahil edilecektir. Ancak, Boost muadilinin herhangi bir şekilde değişeceğini sanmıyorum: bind örneğini alırsak, C++ 0x derleyen insanlar std::bind'u kullanırlar. C++ 03 derlerken, kullanıcılar boost::bind'u kullanmaya devam ederler.

Yanılıyor olabilirim ama benim anlayış, bu standardın değil kesin özellikler için yapılmış bir destek kütüphanelerinden kavramları bu. Bildiğim kadarıyla, boost::bind çok iyi bir şekilde gelişmeye devam edebilir ve bir noktada std::bind'dan farklı bir şey sağlayabilir (cehennem, henüz C++ 0x standardını okumadım, bu yüzden cevabım yok ama std::bind zaten olabilir boost::bind'dan farklı!).

Burada ad alanı çakışmasıyla ilgili bir sorun yok: her kitaplık kendi ad alanında duruyor ve aynı C++ 0x projesinde std::bind ve boost::bind öğelerini çok iyi kullanabilirsiniz.

+0

Unutmayın std :: tr1 ' –

+0

ok. Şimdi görüyorum. Temel olarak bu standart, 2010'da bir tarih itibariyle belirli bir destek kütüphanesinin bir versiyonunu içerecekken, kütüphanenin kendisi destek projesinin bir parçası olarak gelişmeye devam edecektir. Öyleyse, bağımsız bir yazılım geliştiren kişiler, boost.org'dan bir destek kodu kullanmaya devam ederken, geliştirmenin standartlaştırılmış bir parçasının öncelikle kütüphane geliştiricileri tarafından kullanılacağı anlaşılıyor. – Michael

+4

Hayır! Standart, belirli bir destek kütüphanesinin herhangi bir parçasını içermeyecektir. Aslında bu asla gerçekleşmez (ve daha önce de oldu). Merkezi komite (ceza amaçlıdır) çoğu zaman desteklenmeyi öneren bazı kavramları üstlenir, fakat kendi şartnamelerini (ki bunlardan nadiren orijinal olanlardan farklıdır) detaylandırır. Standart kütüphanenin somut uygulamaları tamamen farklı bir şeydir. ... –

İlgili konular