Bir başlık dosyasında bir ad alanı içinde yer alan satır içi işlevler var ve şu anda bir cpp dosyasına taşımak için bir konumda değilim. Bu satır içi işlevlerin bazıları, örneğin sihirli sabitleri kullanın:Satır içi bir üstbilgi başlığı üstbilgisinde özel sabitleri gizleme
// Foo.h
namespace Foo
{
const int BAR = 1234;
inline void someFunc()
{
// Do something with BAR
}
}
Ancak, ben bu sihirli sabitler özel yapmak istiyorum - herhangi bir fikir nasıl?
// Foo.h
namespace Foo
{
namespace
{
// 'private' constants here
const int BAR = 1234;
}
inline void someFunc()
{
// Do something with BAR
}
}
Ancak bu işe yaramazsa ve Foo::BAR
Foo.h
içeren herhangi cpp dosyası mevcuttur: İlk aklıma böylece anonim ad kullanmaktı? Bir uygulama cpp dosyası oluşturmadan bunu yapmak için bir yolu var mı?
Bu, aynı zamanda sözleşme artırmanın kullanımlarıdır. Herkese basit, "Asla bir detay isim alanı girme" diye anladığınız sürece işe yarar. – GManNickG