C ++定义函数默认参数的正确方法

时间:2017-09-19 15:55:28

标签: c++

据我所知,放置默认参数的正确位置是声明文件(* .h)。例如:

TEST.CPP

void print_a(int a){
    std::cout << a;
}

test.h

void print_a(int a = 5);

在这种情况下,我可以有第三个文件。我可以在有或没有参数的情况下运行print_a()。

的main.cpp

#include test.h
int main(void)
{
    print_a();
    print_a(6);
    return 0;
}

问题是,如果在test.cpp中我有另一个想要使用print_a而没有参数的函数呢?编译器告诉我函数的参数太少了。

那你怎么做?

1 个答案:

答案 0 :(得分:2)

您需要在test.cpp中提供函数的声明和默认值。最好的方法是在test.cpp中使用#include test.h。