C (C ++ veya nesne yönelimli derleyiciler yok) kullanmak zorunda olduğumu ve dinamik bellek ayırmaya sahip olmadığımı varsayarsak, bir sınıfı uygulamak için kullanabileceğim bazı teknikler veya bir sınıfın iyi bir yaklaşımı nedir? "Sınıf" ı ayrı bir dosyaya ayırmak her zaman iyi bir fikir midir? Sabit sayıda örneği varsayarak ve hatta derleme süresinden önce her nesneye olan referansı sabit olarak tanımlayarak belleği önceden tahsis edebildiğimizi varsayın. Hangi OOP konseptini uygulamak zorunda olacağım (değişiklik gösterecek) hakkında varsayımlar yapmaktan çekinmeyin ve her biri için en iyi yöntemi önerin.
Kısıtlamalar:
- Gömülü bir sistem için kod yazıyorum ve derleyici ve önceden varolan kod tabanı C olduğunu çünkü C ve bir OOP kullanmak zorunda.
- Dinamik bellek tahsisi yoktur, çünkü dinamik olarak tahsis etmeye başlarsak tükenmeyeceğimizi makul olarak varsaymak için yeterli belleğimiz yoktur.
- Çalıştığımız derleyicilerin işlev işaretçileriyle bir sorunu yok
apr_
ön ekler ve GLib bunlara ön g_
ad ekler ) ve OOP olmadan diğer düzenleme faktörlerini kullanabilirsiniz. Uygulamayı yine de yeniden yapılandıracaksanız, daha sürdürülebilir bir prosedür yapısı bulmaya çalışırken biraz zaman geçirmeyi düşünürüm.