Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/159.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 我可以将默认参数传递给用户定义类类型的参数吗?_C++_Arguments_Default - Fatal编程技术网

C++ 我可以将默认参数传递给用户定义类类型的参数吗?

C++ 我可以将默认参数传递给用户定义类类型的参数吗?,c++,arguments,default,C++,Arguments,Default,我在下一行得到错误“默认参数不在参数列表的末尾” Date(int m = 1, int d = 2, int y = 1900, Time); // default constructor 时间是一个用户定义的类。是否可以使用默认参数提供时间?如果是,如何进行?如果否,如何修复此错误?您可以将时间移到开头,或者根据其具有的任何构造函数为其指定默认参数 Date(Time, int m = 1, int d = 2, int y = 1900); //or Date(int m = 1, i

我在下一行得到错误“默认参数不在参数列表的末尾”

Date(int m = 1, int d = 2, int y = 1900, Time); // default constructor 

时间是一个用户定义的类。是否可以使用默认参数提供时间?如果是,如何进行?如果否,如何修复此错误?

您可以将
时间
移到开头,或者根据其具有的任何构造函数为其指定默认参数

Date(Time, int m = 1, int d = 2, int y = 1900);
//or
Date(int m = 1, int d = 2, int y = 1900, Time = Time(/*ctor args can go here*/));

或者,如果
Time
具有转换构造函数,则可以提供该类型的值作为默认参数。

这解决了问题。谢谢:)