VS 2012中类内声明构造函数,类外定义构造函数,一直报不能给构造函数指定返回类型的错误?

VS 2012中类内声明构造函数,类外定义构造函数,一直报不能给构造函数指定返回类型的错误?但将构造函数在类内定义就没有报错,为什么啊!
#include “stdafx.h”
#include
using namespace std;
class clock{
public :
clock (int newh,int newm,int news){
hour=newh;
minute=newm;
second=news;
}
void set (int newh,int newm,int news);
void show();
private:
int hour,minute,second;
}
//clock构造函数,带形参
clock::clock(int newh=8,int newm=8,int news=8){
hour=newh;
minute=newm;
second=news;
}
//外部借口设置时间函数
;void clock::set(int newh=9,int newm=9,int news=9){
hour=newh;
minute=newm;
second=news;
}
//外部借口,时间显示函数
void clock::show(){
cout<<hour<<":"<<minute<<":"<<second<<endl;
}

int main()
{
clock myclock(0,0,0);
myclock.show();
myclock.set();//调用设置函数的默认初始化值(若没有写初始值,则错误
myclock.show();
myclock.set(12,12,12);
myclock.show();
return 0;
}

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页