新書推薦:
《
汉匈战争全史
》
售價:HK$
99.7
《
恶的哲学研究(社会思想丛书)
》
售價:HK$
109.8
《
不止江湖
》
售價:HK$
98.6
《
天才留步!——从文艺复兴到新艺术运动(一本关于艺术天才的鲜活故事集,聚焦艺术史的高光时刻!)
》
售價:HK$
154.6
《
双城史
》
售價:HK$
110.9
《
冯友兰和青年谈心系列:不是问题的问题(哲学大师冯友兰和年轻人谈心,命运解读)
》
售價:HK$
55.8
《
月与蟹(青鲤文库)荣获第144届直木奖,天才推理作家经典作品全新译本。一部青春狂想曲,带你登上心理悬疑之巅。
》
售價:HK$
50.4
《
索恩丛书·盛清统治下的太监与皇帝
》
售價:HK$
88.5
編輯推薦:
中国电子科技集团公司智能感知技术重点实验室高级工程师凌云,MATLAB编程基础教学一代宗师张志涌教授,强强联合,打造全面掌握MATLAB面向对象编程与CC混合编程的必备经典!
全书70多个示例,经典、可靠,凡是认真看过、用过的人,都会不吝赞叹示例从选取到设计的缜密、精致!
即《精通MATLAB》和《MATLAB教程》之后,又一本可以信赖的诚意之作!
历时三年,数易其稿,唯愿以师者之心,奉献精品,对每一位读者负责。
內容簡介:
本书正文由两篇组成:A篇MATLAB面向对象编程和B篇MATLAB面向CC编程。每篇各5章,各篇内容按照由浅入深的原则编排,篇中各章内容的设计,既有联系,又相对独立,以适应读者系统阅读和随时翻阅的不同需求。A篇的内容包括:MATLAB的类定义和基本操作、类对象数组、类方法的重载与覆盖、类的继承与组合,以及事件与响应。B篇的内容包括:MATLAB外部应用的数据接口、MATLAB对CC程序的调用、CC程序对MATLAB的MAT函数库的调用、CC程序对MATLAB引擎函数库的调用、MATLAB编译器和独立应用程序的开发。
全书包含70多个示例。所有示例都由作者围绕叙述内容精心设计而成。示例的背景知识适于理工类高校任何专业的师生,适于理工类软件开发的各类专业从业人员。所有示例表述清晰、完整,关键程序代码都附有注释,便于读者阅读和理解;示例中的运行结果,都可被读者重现,以帮助读者建立学习信心。
此外,本书每个示例的运行代码或程序都保证准确、完整。读者亲自实践本书示例时所需的代码,既可以直接循书本代码键入而得,也可以扫描二维码或按出版社提供的下载地址下载。
本书既可以作为理工类高校各专业师生的学习、教学用书,也可以用作科研院所各类研发人员的自学用书和参考手册。
關於作者:
凌云,高级工程师。在中国电子科技集团公司智能感知技术重点实验室奉职的十余年间,长期从事算法优化、加速及大型系统软件等的MATLAB和CC的联合开发和研究,主持完成雷达、目标、环境一体化仿真平台的论证和软件设计实现,并在此图形化可现场建模的仿真平台基础上完成多型雷达的仿真。
张志涌 籍贯无锡,教授,享受国务院专项津贴;先后受教育于清华大学、上海交通大学、荷兰王国Eindhoven技术大学;先后从事系统辨识、故障诊断、系统仿真、智能计算和控制、无线信道盲辨识及盲均衡、仿真机器人足球和多智能体、科学计算及软件等方面的研究和教学。对科学计算及软件尤感兴趣,先后使用过Maple、Mathematica、Mathcad、SCILAB、MuPAD等计算软件。1989年接触使用MATLAB;1992年对MATLAB3.0进行汉化,并编写讲义;1997年出版《掌握和精通MATLAB》;2000年出版《精通MATLAB》,至今3次改版累计30多印次;2001年出版《MATLAB教程》,至今8次改版累计80多印次;2015年编译具有MATLAB之父、数值分析和科学计算之父双重身份的Cleve B. Moler经典著作《Numerical Computing with MATLAB》的中文版《MATLAB数值计算》;2018年与凌云合著《MATLAB面向对象和C编程》。
目錄 :
目 录
A 篇 MATLAB面向对象编程
第1章 类定义和基本操作 3
1.1 引 导 3
1.1.1 面向过程的程序设计方法概述 3
1.1.2 面向对象的程序设计方法概述 4
1.1.3 面向过程和面向对象程序设计的区别 4
1.2 类和对象 9
1.3 类定义的基本结构 9
1.4 类的属性 12
1.4.1 属性块和属性 12
1.4.2 属性块的秉质 13
1.4.3 对象属性名的获取和属性值的查询 14
1.4.4 属性赋值的三个不同阶段 19
1.4.5 属性赋值和set函数 19
1.4.6 从属属性和getset函数 23
1.5 类的方法 28
1.5.1 方法块和方法的构成 28
1.5.2 方法块的秉质 32
1.5.3 类对象方法名的查询和获取 33
1.5.4 类方法的调用与程序设计 36
1.6 类对象构造函数 41
1.6.1 理解和应用默认构造函数 42
1.6.2 自编构造函数的编写准则 45
1.6.3 自编构造函数的典型结构 46
1.6.4 自编构造函数的编写 47
1.7 全值类和句柄类的差别 54
1.7.1 两类的类定义和对象性状差别 54
1.7.2 两类对象变量在函数内外传递中的差别 64
1.7.3 全值类和句柄类适用性差别 73
1.8 类方法中的数组运算和矩阵运算 74
第2章 对象数组 78
2.1 对象数组的构成和创建 78
2.1.1 对象数组基础 78
2.1.2 小规模对象数组的方括号创建法 78
2.1.3 对象数组的外循环创建法 82
2.1.4 对象数组的deal属性赋值创建法 85
2.1.5 对象数组的内循环创建法 86
2.1.6 对象数组的编址赋值创建法 88
2.2 对象数组的编址和寻访 91
2.2.1 对象数组的编址 91
2.2.2 对象数组的元素对象寻访 91
2.2.3 对象数组属性值的获取和组织 94
2.3 对象数组操作和特殊对象数组 98
2.3.1 对象数组的常用操作命令 98
2.3.2 空对象数组 98
2.3.3 特殊对象数组的生成 101
第3章 重载和覆盖 111
3.1 引 导 111
3.1.1 重载和覆盖的基本含义 111
3.1.2 什么情况下需要重载和覆盖 111
3.1.3 MATLAB语言格式及控制函数的默认行为表现 111
3.2 类别转换和算符重载 112
3.2.1 对象类别的转换方法函数 112
3.2.2 MATLAB算符及后台控制函数 115
3.2.3 代数运算符的重载 116
3.3 改变对象显示的重载和覆盖技术 121
3.3.1 显示函数、对象形态及显示内容 121
3.3.2 改变对象显示的覆盖技术 127
3.3.3 改变对象显示的重载技术 137
第4章 类的继承与组合 142
4.1 类继承定义 142
4.1.1 单一父类继承 142
4.1.2 多个父类继承 143
4.2 子类如何构造父类 147
4.3 类继承中的覆盖与多态性 151
4.4 抽象类及其应用 157
2 MATLAB面向对象和CC编程
4.4.1 抽象类的定义 157
4.4.2 抽象类的应用 163
4.5 类的组合应用 170
4.5.1 属性包含型组合 170
4.5.2 界面和算法两类的包含型组合 174
第5章 事件与响应 182
5.1 概 述 182
5.1.1 事件概念及其代码特征 182
5.1.2 侦听和响应概念 183
5.2 事件定义和消息发布函数 183
5.2.1 事件块及秉质 184
5.2.2 消息发布函数notify 185
5.3 侦听件的创建和响应函数的型式 185
5.3.1 侦听件创建函数的一般格式 185
5.3.2 不同型式响应函数的注册格式 186
5.4 事件响应的简单应用示例 188
5.5 事件在复杂软件开发中的综合应用 196
5.5.1 MATLAB和C中事件应用的区别 196
5.5.2 事件在 MATLAB和C联合开发中的应用 197
B篇 MATLAB面向CC编程
第6章 数据接口 233
6.1 MATLAB数据 233
6.1.1 MATLAB阵列 233
6.1.2 数据存储方式 234
6.1.3 CC数据接口 236
6.2 mxArray阵列结构 237
6.2.1 创建和删除 mxArray 237
6.2.2 读取和赋值 mxArray中的数据 243
6.2.3 获取 mxArray属性 249
6.2.4 mxArray的 API函数综合应用示例 251
6.3 mwArray阵列结构 259
6.3.1 创建 mwArray 260
6.3.2 读取和赋值 mwArray中的数据 262
6.3.3 获取 mwArray属性 264
目 录 3
6.3.4 mwArray类方法综合应用示例 265
第7章 MATLAB中调用CC程序 269
7.1 关于 MEX文件的一般性说明 269
7.2 C_MEX源文件的构成 270
7.3 编译生成C语言 MEX文件 272
7.3.1 编译器的配置 272
7.3.2 借助编译器生成 MEX文件 273
7.3.3 编译指令 mex简介 274
7.4 MEX文件的执行流程 275
7.5 MEX函数库介绍 276
7.6 C语言 MEX文件应用示例 277
7.6.1 MATLAB环境下编译C_MEX源文件 277
7.6.2 Visual Studio环境下编译C_MEX源文件 282
7.6.3 Visual Studio环境下调试 MEX文件 287
第8章 CC程序对 MAT函数库的调用 291
8.1 MATLAB中数据的输入输出方法 291
8.2 MAT函数库介绍 291
8.3 调用 MAT函数库的CC源码应用程序编写 293
8.4 利用Visual Studio环境编写调用 MAT函数库程序 298
第9章 CC程序调用 MATLAB引擎 309
9.1 MATLAB引擎概念和功用 309
9.2 MATLAB引擎函数库介绍 309
9.3 MATLAB环境下编译调用引擎函数库的CC源文件 310
9.4 Visual Studio 环境编译调用引擎函数库的CC源文件 316
9.5 CC应用程序与 M 函数联合调试技术 319
9.5.1 联合调试流程 319
9.5.2 联合调试应用示例 320
第10章 MATLAB编译器 327
10.1 MATLAB编译器概述 327
10.1.1 编译器的功能 328
10.1.2 编译器的局限性 328
10.1.3 把脚本文件改写为函数文件 328
10.2 MATLAB编译器配置和入门 330
10.2.1 为正确使用 MATLAB编译器进行配置 330
10.2.2 MATLAB编译器使用入门 331
4 MATLAB面向对象和CC编程
10.2.3 编译指令 mcc简介 333
10.2.4 编译器工作流程介绍 338
10.3 应用程序编译器 344
10.3.1 应用程序编译器概述 344
10.3.2 应用程序编译器使用入门 344
10.4 编译器生成可独立执行应用程序示例 351
10.5 编译器生成共享动态链接库示例 357
10.5.1 M 函数文件生成C语言动态链接库及调用 357
10.5.2 M 函数文件生成C语言动态链接库及调用 361
10.5.3 MFC应用程序框架及其综合应用 365
附 录
附录A 基础准备与入门 395
A.1 MATLAB的配置及入门 395
A.1.1 MATLAB的安装与启动 395
A.1.2 为 MATLAB配置 Windows搜索路径 397
A.1.3 MATLAB基本使用方法 399
A.2 Visual Studio集成开发环境入门 403
A.2.1 Visual Studio 2010的安装与启动 403
A.2.2 Visual Studio环境的基本使用方法 405
附录B 索 引 413
B.1 MATLAB的英文关键词 413
B.1.1 面向对象编程的函数和命令 413
B.1.2 面向CC的函数和命令 415
B.2 CC的英文关键词 418
参考文献 419