error: expected constructor, destructor, or type conversion before ‘;’ token

这是因为你在main函数之前调用了其他函数,如下

void test()
{
    cout << "aaa" << endl;
}
test();
int main()
{
    return 0;
}

这是不允许的,如果允许,那么main函数的意义何在。但是可以用另一种方法间接实现,就是虽然不允许直接调用,但是允许赋值,可以利用这一点,改成

int test()
{
    cout << "aaa" << endl;
    return 1;
}
static int a = test();
int main()
{
    return 0;
}

让函数返回一个值,然后赋值给一个变量,就达到间接调用函数的作用。

posted @ 2022-08-02 14:46  秋来叶黄  阅读(4189)  评论(0编辑  收藏  举报