Pertanyaan Singkat
Apakah ada cara khas untuk memberi nama anggota 'publik' dan 'pribadi' dari proyek OO C?
Latar Belakang
Saya sepenuhnya memahami bahwa anggota publik dan pribadi tidak benar - benar ada dalam bahasa C. Namun, seperti kebanyakan programmer C, saya masih memperlakukan anggota sebagai publik atau pribadi untuk mempertahankan desain OO. Selain metode OO khas saya menemukan diri saya mengikuti pola (lihat contoh di bawah) yang membuatnya lebih mudah bagi saya untuk membedakan metode mana yang dimaksudkan untuk dunia luar vs anggota pribadi yang mungkin memiliki lebih sedikit pemeriksaan / lebih efisien dll ... Apakah standar atau praktik terbaik ada untuk hal seperti itu atau apakah contoh saya di bawah ini adalah cara yang baik untuk mendekati ini?
Header Contoh
#ifndef _MODULE_X_H_
#define _MODULE_X_H_
bool MOD_X_get_variable_x(void);
void MOD_X_set_variable_x(bool);
#endif /* _MODULE_X_H_ */
Sumber Contoh
// Module Identifier: MOD_X
#include "module_x.h"
// Private prototypes
static void mod_x_do_something_cool(void);
static void mod_x_do_something_else_cool(void);
// Private Variables
static bool var_x;
// Public Functions - Note the upper case module identifier
bool MOD_X_get_variable_x(void) {return var_x;}
void MOD_X_set_variable_x(bool input){var_x = input;}
// Private Functions - Note the lower case module identifier
void mod_x_do_something_cool(void){
// Some incredibly cool sub routine
}
void mod_x_do_something_else_cool(void){
// Another incredibly cool sub routine
}