我正在用 C 开发自己的断言函数,并在我的头文件中声明为:
void Certify_Continuity( const char* expression, const int line, const char* file );
应该使用定义为的宏调用它:
#if !defined ( ENABLE_DEBUG ) || defined ( __CALLE__ )
#define DEBUG_ASSERT( e ) (void)(e)
#else
#define DEBUG_ASSERT( e ) ( e ) ? (void)0 : Certify_Continuity( #e, __LINE__, __FILE__ )
#endif
这里的问题是程序员可以直接调用Certify_Continuity。
是否有任何技术不允许用户直接调用该函数,只允许他使用宏调用它?