语法错误:'.'前缺少'{ '

Syntax error : missing '{ ' before '.'

本文关键字:语法 错误      更新时间:2023-10-16

>我有一个AVOption结构:

static const AVOption options[] = {  
        COMMON_OPTIONS  // error here
        { NULL }  
    };

COMMON_OPTIONS定义为:

#define COMMON_OPTIONS 
{ "interp", "select interpolation mode", OFFSET(interpolation), AV_OPT_TYPE_INT, {.i64=INTERPOLATE_TETRAHEDRAL}, 0, NB_INTERP_MODE-1, FLAGS, "interp_mode" }, 
{NULL}

我收到一个错误:

2>c:usersawki6desktopffmpeglibavfiltervsrc_testsrc.cpp(98): error C2143: syntax error : missing '}' before '.'

您的COMMON_OPTIONS宏已经具有{ NULL }并且不以,结尾,因此:

static const AVOption options[] = {  
        COMMON_OPTIONS
    };

将解决您的问题。

编辑前的过去答案:即使我们不知道COMMON_OPTIONS扩展到什么,我猜你只是错过了它后面的逗号:

static const AVOption options[] = {  
        COMMON_OPTIONS,
        //            ^
        { NULL }  
    };