编程技术是改变世界的力量。
本站
当前位置:网站首页 > 后端语言 > 正文

谈谈C++语言--入门篇(c++语言入门教程)

gowuye 2024-04-29 16:09 6 浏览 0 评论

聊聊C++语言-软件和编程

C++语言脱胎于C语言,早期还有好几个名字呢,什么“c with class”, “new c”等等。可见其是一种基于C语言发展而来的更高级的语言,与C语言相比,她能做的事情更多,也更方便。在软件规模越来越大、复杂度越来越高的今天,尤其有必要学习C++语言。小编接下来将要写一个系列的文章来带你进入C++语言编程的奇妙世界。

首先聊聊什么是软件?

软件简单来说就是程序和文档,我们用一种语言告诉计算机要做什么事情--编写程序让计算机去处理,我们为自己设计的程序编写一些描述性文档,供设计人员阅读、参考。从小到大,我们可没少接触过包含软件的产品,只不过我们没有注意。

看到这款经典的街机游戏,估计很多人都能回忆起童年经历吧,它就是一个计算机软件的一部分。

什么是编程、什么是C++编程?

编写程序(简称编程)就是用一 种载体告诉计算机,要求她按照我们的命令运算并给出运算结果的过程。

这幅图就是最早的计算机编程形式,编程人员把自己需要的公式的输入用穿孔打印机打印到纸上,计算机读取这张纸,有孔的地方是0,没有孔的地方是1,比如计算1+2的结果,我们可以把算术运算加减乘除以及0~9十个数字用4位二进制数:0000~1111这16个数来表示。这样计算机从针孔打印纸上就能知道编程人员需要计算1+2,她就调用自己的计算器(ALU)计算并把结果3输出到打印纸上。

随着科技的进步,计算机处理能力越来越强,针孔方式编程实在是太慢了,为了效率,人们渐渐发明了各种高级编程形式,汇编语言的发明部分解决了这种效率问题。汇编语言定义了许多帮助人们记忆的关键词--助记符,这些助记符用日常生活中的词语来对应针孔打印纸上出现的0000~1111,比如用词语add来表示加号+,编程人员只需要记住这些有意义的关键词就可以了,出错率大大降低,效率就提高了。

能力越强,承担的责任就越大。随着程序规模的急速增大,汇编语言也慢慢力不从心了。结构化语言,面向对象语言开始走上历史舞台,C++编程就是用一种更抽象的关键词来编写程序,经过一系列如同变戏法似的过程后生成0101这样的命令,计算机再处理这些0101代表的命令,最后一步过程达半个世纪以来几乎没有改变。

如何变戏法呢?

举个例子,我们使用C++的关键词class写一句话:

class a {}

就可以用图中的一系列工具生成许多条0101组成的命令,这个命令和半个世纪前针孔打印纸上的命令没有区别,效率却大大提高了,是不是很棒?

为什么选择C++语言?

C++语言对于培养面向对象的思维习惯十分必要,她也支持C语言编程,也就是C语言和其它高级语言具备的特性她大部分都具备,同时她也与时俱进,不断演化发展出包括STL在内的更多高级特性,方面码农使用。

这篇就写到这里,下一篇我将讲述与C++编程的一些术语以及常用的工具。如果想了解更多与编程有关的知识分享,请关注微信公众号:程序员互动联盟或者coder_online

相关推荐

享受优质直播:微软宣布Azure媒体服务预览版
享受优质直播:微软宣布Azure媒体服务预览版

IT之家讯4月14日消息,微软最近在Azure产品上不断有新动作,今天微软宣布了Azure媒体服务预览版,该版本将为内容所有者和提供商加入更多新功能。最近几年...

2024-05-17 12:31 gowuye

Ethscriptions的创新性

根据以太坊的链上记录,Ethscriptions协议是6月14日上线的。而协议上线后大概在6月16日,协议的创始人才正式在推特上公开了这个协议。协议公开后立刻就在海外以太坊社区引发了很大的轰动,但与此...

使用Lily HBase NRT Indexer为HBase构建二级索引
使用Lily HBase NRT Indexer为HBase构建二级索引

使用CDH提供的ClouderaSearch创建二级索引:近实时索引常使用ApacheFlume或ApacheKafka来不断的摄取并索引数据。Lily...

2024-05-17 12:31 gowuye

直播|Apache Hudi 0.11.0 新版本新特性解读
直播|Apache Hudi 0.11.0 新版本新特性解读

ApacheHudi社区在2022年4月30日发布了新版本0.11.0,其中包括了一系列新功能和提升优化。详情可参考:ApacheHudi...

2024-05-17 12:30 gowuye

python调用属性一样调用方法property

python通过property达到像调用属性一样来调用方法。存在两种方式:(1)类属性:在类中定义值为property对象的类属性。(2)装饰器:在方法上应用装饰器@property。1.1p...

python变量封装:@property最终写法

变量的封装只有在有逻辑限制的情况下使用。@property#创建property对象,只负责拦截读取操作@方法名.setter#只负责拦截写入操作属性:@property公开实例变量,缺少逻辑验证,私...

JavaScript-怎么从JavaScript对象中删除一个属性?

要从一个对象中删除一个属性,你可以这样做。deletemyObject.regex;//或者deletemyObject['regex'];//或者,varprop...

c#反射,反射程序员的快乐
c#反射,反射程序员的快乐

1.什么是反射?我们先来看一张图片吧。根据树木的轮廓,我们在水中能得到,一棵一模一样的树木。好的,先带大家简单了解下,那么,再程序中是如何体现呢!反射是.NET...

2024-05-17 12:30 gowuye

Spring IOC容器注解(@Bean 、 @Configuration、@PropertySource)

本节介绍了如何在你的Java代码中使用注解来配置Spring容器。它包括以下主题。基本概念:@Bean和@Configuration通过使用AnnotationConfigApplication...

C#编程语言中,类是面向对象编程(OOP)的核心概念之一

在C#编程语言中,类是面向对象编程(OOP)的核心概念之一。类是创建对象的蓝图或模板,它定义了对象的属性和方法。对象是类的实例,是类的具体表现。以下是关于C#中类的基本概念的一些详细解释:类的定义类是...

小猿圈Python教程之全面解析@property的使用
小猿圈Python教程之全面解析@property的使用

人工智能发展到今天,现在很多程序员也都在学习python技术开发,但是真正会的却不是很多,那么对于小白的话该如何学习python呢?下面小猿圈Python讲师先...

2024-05-17 12:30 gowuye

一文讲清Python 中的 @property 装饰器
一文讲清Python 中的 @property 装饰器

1.引言Python以增强功能的装饰器等功能而闻名。@property装饰器非常出色,它简化了类中的属性访问,并有助于Python的可读性和优雅性。2...

2024-05-17 12:29 gowuye

c#.Net.NetCore面试(十四)面向对象

C#是一种面向对象的编程语言,它支持面向对象编程(Object-OrientedProgramming,OOP)的概念。面向对象编程是一种编程范式,它使用“对象”来设计软件,并通过类和接口来定义...

软件特攻队|Qt中的反射机制之Q_PROPERTY
软件特攻队|Qt中的反射机制之Q_PROPERTY

接触过Java的同学肯定知道“反射”这一神器,而所谓的反射,指的是对于任意的一个类,即使在运行状态下,都能知道这个类的所有方法和属性,并可以动态调用这些方法的一...

2024-05-17 12:29 gowuye

C++类和对象到底是什么意思?
C++类和对象到底是什么意思?

C++是一门面向对象的编程语言,理解C++,首先要理解类(Class)和对象(Object)这两个概念。C++中的类(Class)可以看做C语言中结构体(...

2024-05-17 12:29 gowuye

取消回复欢迎 发表评论: