Özel tür niteleyici (const'a benzer) uygulamak için herhangi bir yolu var mı? Aynı niteliğe sahip işlevler içinde, yalnızca işlevlerin doğru niteliğe sahip işlevlere çağrılmasına izin vermek istiyorum.C++ özel niteleyiciler oluşturmanın bir yolu var mı?
ı olurdu diyelim: Belirli bir iş parçacığı üzerinde denir işlevleri yalnızca gerçek zamanlı güvenli işlevleri çağırmak emin olmak istiyorum, çünkü bunu yapmak istiyorum
void allowedFunction();
void disallowedFunction();
//Only allowed to call allowed functions.
void foo()
{
allowedFunction();
disallowedFunction(); //Cause compile time error
}
//Is allowed to call any function it wants.
void bar()
{
allowedFunction();
disallowedFunction(); //No error
}
nedenidir. Birçok uygulama, gerçek zamanlı güvenli iş parçacıklarını gerektirdiğinden, derleme zamanında kilitleri algılamanın bir yolunun olması, çalışma zamanı hatalarını algılamanın pek mümkün olmadığını garanti eder.
Dile yeni anahtar kelimeler eklemek için, hiç şans yok (Komiteyi ikna edemediğiniz sürece). Makroları kullanabileceksiniz. –
Sanırım buna karışmış olabilirsiniz: [Metaclasses: C++ üretken düşünceler] (https://herbsutter.com/2017/07/26/metaclasses-thoughts-on-generative-c/) –
Belki de Belirli başlık dosyalarında gerçek zamanlı güvenli fonksiyon beyanı? – Oliv