-
结构、
-
自定义的数据类型、
-
C++的结构有成员变量、还可以定义其中成员函数(方法)、
-
struct a { int a1; char a2[50]; void e()//成员函数、也叫方法、 { a1++; return; } }; int main() { a b;//可以省略struct而直接使用该结构名、 b.a1 = 10; strcpy_s(b.a2, sizeof(b.a2), "字符串");//给成员 cout << b.a1 << endl; cout << b.a2 << endl; b.e();//调用成员函数、 cout << b.a1 << endl;//内容改变 cout << b.a2 << endl; }
-
-
结构体、
-
struct a { int a1; char a2[50]; }; int main() { a b;//可以省略struct而直接使用该结构名、 b.a1 = 10; strcpy_s(b.a2, sizeof(b.a2), "字符串");//给成员 cout << b.a1 << endl; cout << b.a2 << endl;
-
-
形参结构变量传递、
-
struct a { int a1; char a2[50]; }; void c(a c1)//形参使用结构变量、 { c1.a1 = 20; strcpy_s(c1.a2, sizeof(c1.a2), "字符串1"); return; } int main() { a b;//可以省略struct而直接使用该结构名、 b.a1 = 10; strcpy_s(b.a2, sizeof(b.a2), "字符串");//给成员 cout << b.a1 << endl; cout << b.a2 << endl; c(b); cout << b.a1 << endl;//内容没有被函数所改变 cout << b.a2 << endl;//内容没有被函数所改变
-
值传递的、结构体内的数据拷贝、实参将数据拷贝到形参中、
-
实参和形参是两段不同的地址、
-
不推荐、
-
-
形参引用、
-
struct a { int a1; char a2[50]; }; void c(a &c1)//形参变成引用、没有内存拷贝 { c1.a1 = 20; strcpy_s(c1.a2, sizeof(c1.a2), "字符串1"); return; } int main() { a b;//可以省略struct而直接使用该结构名、 b.a1 = 10; strcpy_s(b.a2, sizeof(b.a2), "字符串");//给成员 cout << b.a1 << endl; cout << b.a2 << endl; c(b); cout << b.a1 << endl;//内容改变 cout << b.a2 << endl;//内容改变 }
-
-
指向结构体的指针做函数参数、
-
struct a { int a1; char a2[50]; }; void c(a *dc1)//用指向结构体的指针做函数的参数、 { dc1->a1 = 30;//指向运算符 -> strcpy_s(dc1->a2, sizeof(dc1->a2), "字符串2"); return; } int main() { a b;//可以省略struct而直接使用该结构名、 b.a1 = 10; strcpy_s(b.a2, sizeof(b.a2), "字符串");//给成员 cout << b.a1 << endl; cout << b.a2 << endl; c(&b);//将地址传递、 cout << b.a1 << endl;//内容改变 cout << b.a2 << endl;//内容改变
-
-
-
权限修饰符、共三个
-
public、共有
- 用修饰符 结构类中的成员变量成员函数、就可以被外界访问、需要被外界访问的就定义为public
2. 类似于外部接口可以不添加public属性、没有权限修饰符的话默认为public、
3. 格式public:
- 用修饰符 结构类中的成员变量成员函数、就可以被外界访问、需要被外界访问的就定义为public
-
pribate、私有
-
只能让内部定义的成员函数使用、
-
格式 pribate:
-
struct a { private://私有 int a1; char a2[50]; void e()//成员函数可以直接访问 { a1++; return; } };
-
-
protected、保护、
-
-
类简介、
1. 不管C还是C++均可以用struct来定义、 2. 类与结构体的区别、 1. 类是C++中才有的结构、在C语言中没有这个概念、 2. 结构使用struct定义、而类则使用class定义、 3. C++结构内部成员变量以及成员函数默认的访问级别或者访问权限均是public、 4. C++结构内部成员变量以及成员函数默认的访问级别或者访问权限均是pribate、 5. C++结构体继承默认为public、 6. C++类继承默认为private、 7. 3. 在C++中定义一个属于给类的变量叫做变量、 4. 类和变量均是一块能够存储数据且具有某种类型的空间、
-
类的组织、
1. 类的定义代码尽量放到.h的头文件中、头文件名可以和类同名、 2. 类的具体代码放到。cpp文件中、文件名可以和类同名、 3.