C++ //练习 6.40 下面的哪个声明是错误的?为什么?

C++ Primer(第5版) 练习 6.40

练习 6.40 下面的哪个声明是错误的?为什么?

(a) int ff(int a, int b = 0, int c = 0);
(b) char *init(int ht = 24, int wd ,char bckgrnd);
环境:Linux Ubuntu(云服务器)
工具:vim

 

解释
(a) //正确。
	int ff(int a, int b = 0, int c = 0);
(b) //错误,默认是实参后,形参右侧的所有形参必须都有默认值。
	char *init(int ht = 24, int wd ,char bckgrnd);

你可能感兴趣的:(#,C++,Primer(第5版)练习题,C/C++,c++,开发语言,算法)