学习过计算机组成原理就会知道,处理器会从主存中取得指令,然后进行解释执行。而他们的交流方式是以二进制方式进行的,也就是他们只能识别1和0

;其实计算机是不知道1和0的,现在的实现方式是以高电压与低电压来代表1/0。CPU会从主存中取出指令进行执行。这样整个计算机就可以运行起来。

计算机作为为人服务的机器,必须接受人的控制。所以最初的“程序”是一种打孔的卡片。读卡机将“程序”读入,CPU进入执行。可想而知,这种“

程序”是物理的,假如上百行的代码,可能需要N公斤重的“卡片”。所以为了提高程序开发效率,和简易程序,就发明了汇编,把汇编编写的程序,进

行翻译,生成一个包括机器码的可执行文件,比如微软的8086汇编,80386汇编。

后来有了微软的PC,人们对计算机的需求急剧增加。汇编的开发效率等方面已经严重的不要满足生产需要,随之开发了对程序员友好的C语言,同时期还有很多

不同风格的语言,这里捡主要的来说。但c语言的开发效率和执行效率,很好的满足了当时的需要。在很长一段时间里,许多智慧的程序员用C语言开发了很多实用

并且强大的程序。以C的功力,现在很多系统都是用C作为底层构造语言,比如python的库就是用C写的。开发语言说到底是为程序员来服务的,C的学习和掌控

难度,对于初级乃至使用C几年的程序员来说,都 极易说出使系统崩溃的BUG,而且C没有面向对象开发范式的支持,对于面向对象的开发形式来说无能为力。

Bjarne Stroustrup在smalltalk的基础上对C进行扩展, 增加了面向对象的支持,从而拉开了C++的发展大幕,而后的C++对泛型的支持,使整个开发语言界面都深受其影响。

同期的JAVA,C#对编程范式的支持 ,也无出其右。不过,现在动态编程的发展,是C++所不具备的能力。正因为C++支持绝在多数主流的开发范式,所以学习

C++是一件比较不容易的事情。

学习C++,要掌握三种编程范式:一:过程式 二:面向对象/基于对象 三:泛型编程;

在这之前要掌握C++的语言细节及概念。

一:基本类型 int bool 等等  二:流程控制 if else while 等  三:类 class  四:泛型

这些语言实现与编程范式,共同构成了C++语言的主体部分。

c++ 概念及学习/c++ concept&learning(一)的更多相关文章

  1. c++ 概念及学习/c++ concept&learning(二)

    上篇内容讲述了整个语言的发展[为什么会产生编程语言],以及学习C++所需要掌握的内容.这节开始认识第一部分最基本的内容:C++的内建类型,也就是基本类型. 在这些知识之前留一个问题:为什么基本所有语言 ...

  2. c++ 概念及学习/c++ concept&learning(三)

    这一篇继续说说程序设计中的基本语句:控制块 一 if类控制语句 if if else if  , else if ,else if(条件语句){如果条件为真,要做的一些事情}  if(条件语句) {如 ...

  3. 【转载】 《Human-level concept learning through probabilistic program induction》阅读笔记

    原文地址: https://blog.csdn.net/ln1996/article/details/78459060 --------------------- 作者:lnn_csdn 来源:CSD ...

  4. 多视图学习(multiview learning)

    多视图学习(multi-view learning) 前期吹牛:今天这一章我们就是来吹牛的,刚开始老板在和我说什么叫多视图学习的时候,我的脑海中是这么理解的:我们在欣赏妹子福利照片的时候,不能只看45 ...

  5. 增强学习(Reinforcement Learning and Control)

    增强学习(Reinforcement Learning and Control)  [pdf版本]增强学习.pdf 在之前的讨论中,我们总是给定一个样本x,然后给或者不给label y.之后对样本进行 ...

  6. 网络表示学习Network Representation Learning/Embedding

    网络表示学习相关资料 网络表示学习(network representation learning,NRL),也被称为图嵌入方法(graph embedding method,GEM)是这两年兴起的工 ...

  7. 机器学习--集成学习(Ensemble Learning)

    一.集成学习法 在机器学习的有监督学习算法中,我们的目标是学习出一个稳定的且在各个方面表现都较好的模型,但实际情况往往不这么理想,有时我们只能得到多个有偏好的模型(弱监督模型,在某些方面表现的比较好) ...

  8. 零次学习(Zero-Shot Learning)入门(转)

    很久没有更文章了,主要是没有找到zero-shot learning(ZSL)方面我特别想要分享的文章,且中间有一段时间在考虑要不要继续做这个题目,再加上我懒 (¬_¬),所以一直拖到了现在. 最近科 ...

  9. 迁移学习( Transfer Learning )

    在传统的机器学习的框架下,学习的任务就是在给定充分训练数据的基础上来学习一个分类模型:然后利用这个学习到的模型来对测试文档进行分类与预测.然而,我们看到机器学习算法在当前的Web挖掘研究中存在着一个关 ...

随机推荐

  1. 苹果操作系统Mac OS X

    OS X 是先进的操作系统.基于坚如磐石的 UNIX 基础,设计简单直观,让处处创新的 Mac 安全易用,高度兼容,出类拔萃. UNIX 之威力,Mac 之简单OS X 既简单易用且功能强大.所有的一 ...

  2. Go语言博客

    http://www.cnblogs.com/concurrency/p/4293613.html#3130523

  3. Maven常用命令(转载)

    Maven库: http://repo2.maven.org/maven2/ Maven依赖查询: http://mvnrepository.com/ Maven常用命令: 1. 创建Maven的普通 ...

  4. AjaxUpLoad.js使用实现文件上传

    AjaxUpLoad.js的使用实现无刷新文件上传,如图. 图1 文件上传前 图2 文件上传后 1.创建页面并编写HTML [html] view plaincopy   上传文档: <div  ...

  5. 20-语言入门-20-Financial Management

    题目地址: http://acm.nyist.edu.cn/JudgeOnline/problem.php?pid=72    描述Larry graduated this year and fina ...

  6. Effective C++学习笔记 条款07:为多态基类声明virtual析构函数

    一.C++明确指出:当derived class对象经由一个base class指针被删除,而该base class带着一个non-virtual析构函数,其结果未定义——实际执行时通常发生的是对象的 ...

  7. 二维树状数组(水题) POJ1195

    前段时间遇到线段树过不了,树状数组却过了的题.(其实线段树过得了的) 回忆了下树状数组. 主要原理,还是二进制位数,每一项的和表示其为它的前((最后一位1及其后)的二进制数)和,可从二进制图来看.(用 ...

  8. 函数lock_rec_bitmap_reset

    /*********************************************************************//** Resets the record lock bi ...

  9. UVA 568 Just the Facts (水)

    题意: 求一个数n的阶乘,其往后数第1个不是0的数字是多少. 思路: [1,n]逐个乘,出现后缀0就过滤掉,比如12300就变成123,继续算下去.为解决爆long long问题,将其余一个数mod, ...

  10. 【C#学习笔记】鼠标控制

    using System; using System.Runtime.InteropServices; using System.Windows.Forms; namespace ConsoleApp ...