怎么在编译期根据#if停止编译

如何在编译期根据#if停止编译
我想通过宏来在编译期判断是否应该继续编译,比如
#ifndef WHAT
STOPCOMILING
#endif
之类的,能中断编译,有没有能实现类似功能的宏呢?或者可以像Messagebox那样弹窗也可以,我只知道#pragma message("")可以输出消息,但是不明显,关键是不能停止继续编译。从语法角度讲,这个可以实现吗?或者通过别的特殊手段达到同样效果也可以啊。貌似编译器无法执行语句的,比较困难。

------解决方案--------------------
#error
------解决方案--------------------
#error?
------解决方案--------------------
探讨#error?