码迷,mamicode.com
首页 > 其他好文 > 详细

类及其实例化

时间:2016-07-10 09:47:51      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:

类(class)是面向对象程序设计(OOP)实现信息封装的基础。

类是用户定义类型,也称为类类型。

每个类包含数据说明和一些操作数据或传递消息的函数。类的实例称为对象。

C++的类有C的结构类型演变而来。本章首先介绍结构类型,然后讨论C++的类和对象。

 

5.1结构

结构由数目固定的成员构成。

各成员可以具有不同的数据类型。

一个结构变量在内存占有一片连续的存储空间。

 

5.1.1定义结构和访问结构

1.定义结构

可以用不同方法定义一个结构变量

(1)声明类型之后声明变量

(2)声明类型的同时声明变量

(3)直接声明结构类型变量

 

//C++的结构的数据成员可以默认有默认的值

//匿名结构体,限量版

 

 1 #include <iostream>
 2 
 3 struct MyStruct
 4 {
 5     int num;
 6     double db = 10.8;//C++的结构的数据成员可以默认有默认的值
 7 };
 8 
 9 struct
10 {
11     int num;
12     double db = 10.8;//C++的结构的数据成员可以默认有默认的值
13 }sx, sy;//匿名结构体,限量版
14 
15 void main()
16 {
17     MyStruct s1;
18 
19     std::cout << s1.db << std::endl;//10.8
20     
21     system("pause");
22 }

 

一个结构类型的成员可以是另一个已定义的结构类型

 

 1 struct MyStruct
 2 {
 3     int num;
 4     double db = 10.8;
 5     void boss()//函数
 6     {
 7 
 8     }
 9 };
10 
11 struct
12 {
13     int num;
14     double db = 10.8;
15     MyStruct boss1;//一个结构类型的成员可以是另一个已定义的结构类型
16 }sx, sy;

 

错误:不能实现的无穷递归结构

//error C2460: “MyStruct::sx”: 使用正在定义的“MyStruct”

 

1 struct MyStruct
2 {
3     int num;
4     double db = 10.8;
5     MyStruct sx;//error C2460: “MyStruct::sx”: 使用正在定义的“MyStruct”
6 };

 

 

123

类及其实例化

标签:

原文地址:http://www.cnblogs.com/denggelin/p/5657097.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!