最近工作中遇到,需要在工程的makefile文件中定义不同的参数,包括宏,数字,字符串等,供代码使用,具体定义和使用方式如下:
定义:make.mk
# use time authorization
DEFS += -DUSE_TIME_AUTHORIZATION=1
# authorization due date 2020-12-31
DEFS += -DSDK_VALID_DEADLINE=1609344000
# 1234 is a string
DEFS += -DACCOUNT_ID=\"1234\"
# service type:face_feature
DEFS += -DSERVICE_TYPE=\"face_feature\"
使用:
uint64_t seconds_since_epoch = CDateTime::CurrentDateTimeSeconds();
if (seconds_since_epoch > SDK_VALID_DEADLINE && USE_TIME_AUTHORIZATION) {
std::cout << "The authorization date has expired!" << std::endl;
exit(0);
}
json["account_id"] = ACCOUNT_ID; // 业务账号ID
json["product"] = SERVICE_TYPE; // 所属产品标识