第一个是默认构造函数,第二个也是构造函数,需要传参, 比如 Course p;会调用第一个来构造对象,Course p("hello kitty",21,98.6)会调用第二个函数来构造对象,另外楼主可以看一下c++里struct 与class的区别,拷贝构造函数
红色的圈有两部分
1.Course(){} 是第一部分,是一个无参构造函数
2.剩下的为第二部分,也是一个构造函数,参数为name,number,score,从代码上看,意思就是name不为空,并且number大于0的时候,赋值给结构体的成员
两个构造函数,一个无参,一个有参,一般写结构体用的不多,都是用来做初始化的。新建结构体对象的时候会默认调用。