【需求】 需要根据不同的平台去使用不用的程序代码。
【知其然知其所以然】 因为在使用SSE指令集时候,只能在Intel核心的机器上使用,但是很多ARM机器上是使用ARM指令集,这就需要根据宏定义来根据不同机器的核心来选择正确的代码段。增加了代码的鲁棒性。
CMakeLists.txt 的编写
# 设置个宏定义开关
option(USE_SSE "Set to switch to build use SSE" ON)
option(USE_ARM_NEON "Set to switch to build use arm-neon" OFF)
if (USE_SSE)
add_definitions(-DUSE_SSE) # 宏定义 USE_SEE