×

C++和MATLAB到底有什么区别详细资料比较

消耗积分:0 | 格式:rar | 大小:0.03 MB | 2019-09-16

分享资料个

  经常会有人问,是先学习C++好还是先学习MATLAB好呢?这也是一个很让人纠结的问题,两者各有千秋。大二一年里我也学习了这两门课,我首先学习的是C++,然后在学习MATLAB的,这是根据课程的安排,下面我就来谈谈我个人学习了这两门课之后的感受吧。

  其实C++和MATLAB两者之间有很多的相同之处,也有很重要的区别,首先从宏观意义上来讲,C++主要是编程,和 C 语言、JAVA等等是同一类东西,而MATLAB主要是数据处理,就是说在日常生活中遇到的一些比较复杂或者说工作量很大的问题、数据之类的东西,我们就可以通过在MATLAB上编辑程序来解决这些问题,但是如果一个人在编写MATLAB的程序,我们通常情况下不会说他在编程,因为那样会被别人误解为是在编写C++之类的东西,实际上我们是在解决一些实际问题。所以说C++和MATLAB之间也是有很大的区别的。

  既然谈到了C++,我也顺便说一下JAVA,其实说实话,我本人对于JAVA也不是太了解,没有专门的学习过,准备大三攻克它,但是我在网上查看了很多相关资料。据我了解,C++、JAVA都是完整的通用平台的语言。通俗的说,就是我们可以用它们来编写任何程序并且可以在大部分硬件系统和操作系统中进行操作运行,其实,C++、JAVA都是在C语言基础上发展起来的,在表达形式上三者很相似。目前,C++、JAVA和MATLAB这三种语言是当今三种最为主流的程序设计语言,但是从相对而言,C++和JAVA都是主流的面对对象的程序设计语言,简单的说,是以数据为中心进行编程。MATLAB也会涉及到一些对象元素,但是MATLAB更加注重的是整个过程。MATLAB的语言是一种解释型的高级语言,它包含了自己的数据结构、程序流控制以及文件输入输出等功能。MATLAB语句可以在MATLAB控制窗口中直接执行的,也可以采用脚本(script)*.m文件盒函数(function)*.m文件的形式来实现。MATLAB是目前使用最广泛的科学计算的软件,在这个软件上我们可以用于编写计算程序的语言,这个过程我们也叫MATLAB。所以它也不仅仅是通用编程语言,只适用于科学计算,而且只能用在MATLAB软件上的。C++是编译型的高级语言,它包含了全局变量、结构、枚举、联合等等一系列源于C语言的概念,从而包含了面向对象和面向过程的双重概念,相对于JAVA呢,JAVA则是属于解释型的高级语言,而且兼容性很好,但是效率可能会低一些,具体情况我不太清楚,还得进一步探究。另外,更为重要的一点就是,素偶偶的JAVA程序都是由类或者说是类的定义组成的,所以说,JAVA是一种完全的面向对象的语言。JAVA中没有独立的类声明,只有类定义。JAVA中的所有的方法都是在类的主体定义的,但是C++并非如此,在JAVA中我们必须将函数的定义置于类的内部,这种精致在类外对方法定义的规定和JAVA的完全面向对象特性是完全吻合的,JAVA提供了与C++类似的构造函数,但是在JAVA中没有拷贝函数,因为所有自变量都是按引用传递的。对于MATLAB来说,它本身就是用C语言来时间的,为了生成可执行的代码,MATLAB开发了针对C/C++的数学函数库很Complier。MATLAB的特点就是他能够将矩阵作为基本的储存单元。MATLAB的算术符对于矩阵运算时非常方便的,可以大致将其分为针对数值阵列元素和针对数值阵列整体的两类数学运算符。其中针对数值阵列元素的数学运算符的运算方法可以理解为是数值阵列的单个数学元素逐个按顺序进行运算的运算符,而针对数值阵列整体的数学运算符的运算对象则是数值阵列整体。记得老师给我们上第一节课就说过,MATLAB的中文含义就是“矩阵实验室”。可想而知矩阵对于其的重要性,MATLAB里的数据存储的基本单元就是矩阵,即使是一个数,在其内部也是把它看做是一个矩阵。对于储存在MATLAB变量中的值都属于一个类,这些值不仅包括你可能通常会考虑的对象,如时间序列或者状态空间对象,也包括双精度数。所有的MATLAB数据类型都是具有面对对象编程中的类的功能。MATLAB数据类型的建立是在运行时并不是在编译时,通过调用class函数来将对象注册到类。方法调度也不想C++或者JAVA中的那样以语法为基础,当参数列表中包含优先性相同的对象时,MATLAB用最左边的对象来选择要调用的方法。在MATLAB中,没有与析构函数相当的方法,如果你想要将某变量从工作空间中清除的话,那么你就可以使用clear函数来实现。对于我们这些初学者来说,如果我们想学好一门编程语言的方法就一个—个地大量地编程,当我们书上的题目做会之后,还要尽可能地参与实际的项目,去尝试着解决一些实际的问题,这样才是最好的锻炼自己编程思想的方法,这样我们以后才能够应付更多的实际问题。

 

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !