第6章和第7章介绍了 C++ 类的基本知识和抽象数据类型的表示方法。对类的对象(即抽象数据类型的实例)的操作是通过向对象发送消息完成的(即调用成员函数的形式)。对某些类(特别是数学类)来说,这种调用方式是繁琐的,而用 C++ 中的丰富的内部运算符集来指定对对象的操作要更好。本章要介绍怎样把C++中的运算符和类的对象结合在一起使用,这个过程称为运算符重载。扩展 C++ 使它具有这些新的功能是理所当然
本章继续介绍类与数据抽象。我们要介绍更高级的课题并为第8章介绍类与运算符重载奠定基础。第6章到第8章的讨论鼓励程序员使用对象,我们称之为基于对象编程(object-based programming,OBP)。 然后,第9章和第10章介绍继承与多态,这是真正面向对象编程(object-oriented programming,OOP)的技术。本章和后面几章要使用第5章介绍的C语言式字符串,帮助读者
下面开始介绍 C++ 中的面向对象。为什么把 C++ 中的面向对象推迟到第6章才开始介绍呢?原因是我们要建立的对象是由各个结构化程序组件构成,因此先要建立结构化程序的基础知识。 在第1章到第5章的“有关对象的思考”小节中,我们介绍了 C++ 中的面向对象编程的基本概念(即对象思想)和术语(即对象语言)。在这些”有关对象的思考”小节中,介绍了面向对象设计(object-orienteddesign,
本章介绍 C++ 编程语言一个最强大的特性——指针。指针是C++中最难掌握的问题之一。第3章介绍了引用可以用于实现按引用调用。指针使程序可模拟按引用调用,生成与操作动态数据结构,即能够伸缩的数据结构,如链表、队列、堆栈和树。本章介绍基本的指针概念,而且强调了数组、指针与字符串之间的密切关系.并包括一组很好的字符串操作练习。 第6章介绍结构中的指针使用。第9章和第10章介绍如何用指针和引用进行面向对
C++使用非程序员可能感到奇怪的符号。我们首先介绍一个简单程序:打印一行文本。程序及其屏输出如图1.2。 这段程序演示了C++语言的几个重要特性。我们详细介绍程序的每一行。 // Fig.1.2:fig1_02.cpp // A first program in C++ 以//开头,表示该选项其余部分是注释语句(comment)。程序员手稿注释语句用来说明和提高程序的可读性。注释语句还可以帮助其
更新时间:2018-09-17 11:25:51 开发者在设备嵌入式C程序开发过程中需要准备本地的开发环境及工具,除了设备本身的开发,随着IoT开发场景和云端接入平台功能的不断丰富,相应的准备工作也在不断增加,例如下载接入云平台的特定SDK包,安装需要的依赖库,可能还需要为编译SDK使用特定版本的编译器及操作系统等。如果在准备本地环境过程中出现一些环境编译时的错误,还可能需要和合作方一起定位查找问
更新时间:2018-09-18 15:26:39 什么是嵌入式 Javascript 开发? 嵌入式 Javascript 开发是面向嵌入式设备,用 Javascript 语言来开发嵌入式设备上的应用。Javascript 语言开发嵌入式设备应用,具备如下优点: 简单:语法不涉及指针,内存分配和释放,内存管理由 Javascript 引擎完成 灵活:解释性语言,不需要编译即可运行,方便调试,升级和
8. Spring Boot简介 Spring Boot可以轻松创建能够运行的、独立的、生产级别的基于Spring的应用程序。我们已经选择好了Spring平台以及第三方类库,所以你们能够以最少的瞎忙活开始工作。大多数Spring Boot程序需要非常少的Spring配置。 您可以使用Spring Boot来创建能够使用java -jar方式或更传统的war部署的方式启动的Java应用程序。我们还提
Rails 缓存简介 本文要教你如果避免频繁查询数据库,在最短的时间内把真正需要的内容返回给客户端。 读完本文,你将学到: 页面和动作缓存(在 Rails 4 中被提取成单独的 gem); 片段缓存; 存储缓存的方法; Rails 对条件 GET 请求的支持; 1 缓存基础 本节介绍三种缓存技术:页面,动作和片段。Rails 默认支持片段缓存。如果想使用页面缓存和动作缓存,要在 Gemfile 中
什么是WebGL 虽然WebGL可以用来实现3D对象绘制,但WebGL并非一个3D引擎 WebGL只是关于绘制点、线、三角形的接口 它是在GPU上运行代码的低级API 着色器(Shaders) 使用着色器(shader)来绘制图形 顶点着色器计算顶点位置 片段着色器处理光栅化(像素点颜色) GL着色器语言 看起来如何?特定于GPU的语言 (GLSL) 看起来像C语言,以void main()开始
FLTK作为GUI开发包,包含了常用的图形用户接口需要的一些构件,视觉表现非常丰富,如下两图所示: 常用按钮构件 按钮名称 头文件 按钮名称 头文件 Fl_Button Fl_Button.H Fl_Check_Button Fl_Check_Button.H Fl_Light_Button Fl_Light_Button.H Fl_Repeat_Button Fl_Repeat_Button.H
提供丰富的跨平台的GUI构件(Widget)。有按钮,菜单,窗口等,近六十个。 支持OpenGL,提供Fl_GL_Window,支持OpenGL相关的操作。 提供界面设计工具FLUID,非常方便进行界面的设计。 良好的跨平台移植性。 支持多种C++编译器,Gcc,BC,VC等等。 灵活性。FLTK本身可以定制,以满足不同的需要。这使得FLTK在嵌入式开发上有着极大的竞争力,这正是我要推荐使用FLT
Go 语言简介 Go语言是由谷歌的罗布·派克(Rob Pike),罗伯特·格瑞史莫(Robert Griesemer),及肯·汤普逊于2007年9月开始设计Go语言,稍后Ian Lance Taylor, Russ Cox加入项目中。 Go语言于2009年11月正式宣布推出,成为开放源代码项目,并在Linux及Mac OS X平台上进行了实现,后追加Windows系统下的实现。 谷歌资深软件工程师
在开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护。 后面我们学习了函数,知道函数是实现一项或多项功能的一段程序,这样就更方便我们重复使用代码。 紧接着,我们有学了类,类可以封装方法和变量(属性)。这样就更方便我们维护代码了。 我们之前学过,类的结构是这样的: 而我们要学的模块是这样的: 在模块中,我们不但可以直接存放变量,还能存放函数,还能存放类。 不知道你们还有
LocaSpaceViewer是一款专业的三维数字地球软件,具备便捷的影像、高程、倾斜摄影数据阅读功能。通过使用LocaSpace Viewer,用户能够快速地浏览、测量、分析和标注三维地理信息数据,实现三维场景的飞行浏览和多视角浏览,快捷的对地理信息数据进行格式转换。 LocaSpaceViewer是一个集多在线地图资源查看、影像、地形数据快速下载、倾斜数据极速浏览、