单项选择题

有以下程序:
class Date
public:
Date(int y,int m,int d);

year = y;
month = m;
day = d;

Date(int y = 2000)

year = y;
month = 10;
day = 1;

Date(Date &d)

year = d.year;
month = d.month;
day = d.day;

void print()

cout<<year<<"."<<month<<"."<<day<<endl;

private:
int year,month,day;
;
Date fun(Date d)
Date temp;
temp = d;
resurn temp;
int main ()
Date date1 (2000,1,1),date2 (0,0,0);
Date date3 (date1);
date2 = fun(date3);
return 0;
程序执行时,Date类的拷贝构造函数被调用的次数是

A.2
B.3
C.4
D.5