类的初始化、构造函数的定义
当未定义构造函数时会自动生成一个构造函数,默认为空
#include<iostream>
using namespace std;
class fun{
public:
fun();
void show_it();
private:
int a;
int b;
int c;
}; //注意分号结尾
fun::fun(): a(1),b(2),c(3){} //不用分号结尾
void fun::show_it(){
cout << a << ' ' << b << ' ' << c << endl;
}
int main(){
fun temp;
temp.show_it();
return 0;
}
关于构造函数的花括号使用
#include<iostream>
#include<cstring>
using namespace std;
class fun{
public:
fun(int i,char j,char k[]);
void show_it();
private:
int a;
char b;
char c[];
}; //注意分号结尾
fun::fun(int i,char j,char k[]): a(i),b(j){strcpy(c,k);} //不用分号结尾,花括号内是需要执行的函数,若无函数需要执行可不写内容
void fun::show_it(){
cout << a << ' ' << b << ' ' << c << endl;
}
int main(){
fun temp(1,'1',"123");
temp.show_it();
return 0;
}