声明默认参数,调用时不写参数出现问题

代码助手 论文问答 1

c++ h文件:void resize(int,char); CPP文件:void resize (int size,char q) {} 调用时:s5.resize(2); 报错了,为什么?

回复

共2条回复 我来回复
  • 代码工厂
    这个人很懒,什么都没有留下~
    评论

    在.h文件定义的时候,给resize设置默认值,如下: .h文件:void resize(int,char ch = 'a'); //让第二个参数默认是字符'a',这样调用的时候,s5.resize(2);就可以了,这时候, s5.resize(2);等价于 s5.resize(2,'a');

    0条评论
  • 代码港湾
    这个人很懒,什么都没有留下~
    评论

    resize是类的成员函数吗?resize 有两个参数,你在调用的时候只输入了一个int类型的2,没有输出char类型的参数。 调用的时候应该写成:

    s5.resize(2,'a'); //假设用'a'作为第二个参数

    0条评论

发表回复

登录后才能评论