2013-08-04 20 views
8

Genom ek açıklamalarını grafiklere dönüştüren yeni bir kütüphane oluşturacağım. Ancak, C++, Perl gibi merkezi bir kütüphane web sitesine sahip olmadığı için, ad alanının herhangi biriyle çakışıp çakışmadığını nasıl anlarım?Yeni projemin ad alanını nasıl adlandırılır?

+5

Neden adı XnoDraw :: ', sonra? –

+2

'bir internet meme gibi ses yapmak xd'' lol :: ',' ​​rly :: 've' yolo :: ',' ​​XnoDraw :: ', fark tek şey bence daha iyi durumda olduğundan emin çoğu kez isimleri Patentli ya da yasalar tarafından korunan, bu yüzden "ücretsiz" bir isim seçmek için emin olun. – user2485710

+2

Seçmenleri kapatmak için: bu ne öznel ne de konu dışıdır. Kütüphane için benzersiz bir isim bulmak kütüphane tasarımının bir parçasıdır ve burada dil kullanımı sorunları da vardır. – Potatoswatter

cevap

12

Hayır, xd iyi bir isim değildir: çok kısa. Sınırlı bir bağlamda iyi bir takma isim olabilir, ancak başkaları tarafından kullanılacak bir kütüphane için uzun ve açıklayıcı bir ad verin. Daha sonra kullanıcılar projelerine anlamlı gelen bir takma ad seçebilir.

namespace my_company { 
namespace XnoDraw { 
// ... 
} // namespace XnoDraw 
} // namespace my_company 

// user code, not your code: 
namespace xd = my_company::XnoDraw; 
1

Sen std dışında bir şey kullanabilirsiniz.
C++, ad alanları için bileşik adlarına izin vermediğini unutmayın. Örneğin

:

// Allowed 
namespace a 
{ 
    namespace b 
    { 
     int c; 
    } 
} 

// Not allowed 
namespace a::b 
{ 
    int c; 
} 
+3

İki ad alanını açmak için iki kez 'namespace' yazmanız gerekir, ancak kullanılabilir adlar kümesi her iki şekilde de aynıdır. – Potatoswatter

İlgili konular