#define LOGI(...) ((void)__android_log_print(ANDROID_LOG_INFO, "native-activity", __VA_ARGS__))
#define LOGW(...) ((void)__android_log_print(ANDROID_LOG_WARN, "native-activity", __VA_ARGS__))
これは、これら 2 つのマクロの定義です。コードの後半で、LOGI
このLOGW
ように使用されます
LOGI("accelerometer: x=%f y=%f z=%f",
event.acceleration.x, event.acceleration.y,
event.acceleration.z);
そしてこのように
LOGW("Unable to eglMakeCurrent");
私は複雑なマクロを避けようとしているので#define
、一般的に、このマクロが実際に何を意味するのか理解できません。ここでの 3 つのドット表記の役割は何ですか? これにより、コードの後半で何が#define
変更されますか?
明らかに、3つのドットが不特定の数の引数を示すために使用されていることは知っていますが、この状況の読み方がわかりません。