博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第二章 掌握C++(1)从结构到类
阅读量:5130 次
发布时间:2019-06-13

本文共 1257 字,大约阅读时间需要 4 分钟。

  C++与C相比有许多优点,主要体现在封装性(Encapsulation)、继承性(Inheritance)和多态性(Polymorphism)。封装性是把数据与操作数据的函数组织在一起,不仅使程序结构更加紧凑,并且提高了类内部数据的安全性;继承性增加了软件的可扩充性及代码重用性;多态性使设计人员在设计程序时可以对问题进行更好的抽象,有利于代码的维护和可重用。

  在C语言中,我们可以定义结构体类型,将多个相关的变量包装为一个整体使用。在结构体中的变量,可以是相同、部分相同,或完全不同的类型数据。在C语言中,结构体不能包含函数。而在C++中结构体可以包含函数。

  2.1.1结构体的定义

#include
using namespace std;struct point{ int x; int y;};int main(){ point pt; pt.x = 0; pt.y = 0; cout<
<<" "<
<

  注意,在定义结构体时,一定不要忘了在右花括号处加上一个分号。

  下面,将输出函数写在结构体中,代码就变成:

#include
using namespace std;struct point{ int x; int y; void output() { cout<
<<" "<
<

  2.1.2结构体与类

  将上面的point结构体定义中的关键字struct换成class,如下:

class point{    int x;    int y;    void output()    {        cout<
<<" "<
<

  在默认情况下,结构体成员是公有(public)的,而类的成员是私有(private)的。在类中,公有成员是可以在类的外部进行访问的,而私有就只能在类的内部进行访问。所以,2.1.1中的代码直接只将struct换成class再运行时会出错,因为我们访问了类的私有成员。

  所以,将其都改为公有的也就可以运行了。

#include
using namespace std;class point{public: int x; int y; void output() { cout<
<<" "<
<

  

转载于:https://www.cnblogs.com/xueniwawa/p/3999464.html

你可能感兴趣的文章
Entity Framework的一个坑
查看>>
jsDoc 使用及配置!
查看>>
C++11 正则表达式简单运用
查看>>
Yum本地源配置
查看>>
从整库逻辑备份单独抽出一张表
查看>>
[转载]DbHelper的常用数据库类
查看>>
C#正则表达式占位符
查看>>
weblogic sockets 和 thread 问题解决
查看>>
《那些年啊,那些事——一个程序员的奋斗史》——47
查看>>
php curl 登陆百度贴吧(经历记录)
查看>>
【新鲜出炉】影响设计美观的2012年度终极收藏的最佳字体集合
查看>>
MySQL_产品昨日库存与历史入库历史出库成本_20161124
查看>>
[Training Video - 4] [Groovy] Object equality and variable equality check
查看>>
ReactiveCocoa的使用方法
查看>>
JS获取页面复选框选中的值
查看>>
lucene 7.x 排序
查看>>
python_控制台输出带颜色的文字方法
查看>>
asyncpipe
查看>>
Python模块——unittest 单元测试
查看>>
hdu 1864(01背包,输入处理真烦)
查看>>