c++学习笔记——模板和IO(二)

C++异常 前言: 异常处理就是处理程序中的错误。所谓错误是指在程序运行的过程中发生的一些异常事件(如:除0溢出,数组下标越界,所要读取的文件不存在,空指针,内存不足等等) 在对C语言的学习中,我们常常对错误的处理围绕着两种方法:一种是使用整型的返回值标识错误;二是使用errno宏(可以简单的理解为 ...

高层次综合器Vivado HLS的概念与特点[原创www.cnblogs.com/helesheng]

最近在写一本Xilinx的FPGA方面的书,现将HLS部分内容在这里分享给大家,希望大家喜欢,也欢迎批评指正。[原创www.cnblogs.com/helesheng] 在可编程逻辑器件被用于电子系统设计的前期,由于所含的逻辑资源较少,绝大部分情况下,它们被用于实现数据的传输和接口电路。工程师们习惯 ...

ua5.4源码剖析:三. C++与Lua相互调用

概述 从本质上来看,其实说是不存在所谓的C++与lua的相互调用。lua是运行在C上的,简单来说lua的代码会被编译成字节码在被C语言的语法运行。在C++调用lua时,其实是解释运行lua文件编译出来的字节码。lua调用C++其实还是解释运行lua文件编译出来的字节码的语义是调用lua栈上的C++函 ...

C++学习笔记 (2)

C++问题的补充 前言 关于对之前遗留的补充 malloc 和 new 的区别 const 和 引用 的深入 this指针 的深入 一、C++中对象的创建 malloc和new创建对象 //定义一个Pointer类 class Pointer { public: int row; int col; ...

指针知识点总结

指针总结 基础概念 系统给虚拟内存的每个存储单元分配了一个编号,0x0000 0000-0xff ff ff ff,这个编号是地址,指针就是地址 内存数据的访问方式: (1)直接访问—按变量名存取变量。 (2)间接访问——将变量的地址存放在另一个变量(指针变量),通过指针变量来访问。 数据在内存中的 ...

使用C语言编程的7个步骤

C 是编译型语言。为了让读者对编程有大概的了解,博主把编写 C 程序的过程分解成 7 个步骤(见下图)。注意,这是理想状态。在实际的使用过程中,尤其是在较大型的项目中,可能要做一些重复的工作,根据下一个步骤的情况来调整或改进上一个步骤。 ...

C++初探索

C++初探索 前言 C++ 和 C 的区别主要在8个方面: 输入和输出 引用 inline函数 函数默认值 函数重载 模板函数 new 和 delete namespace 我仅对印象不深的地方做了总结。 一、引用初探索 1.引用的定义与区别 定义:类型& 引用变量的名称 = 变量名称 '&' 不是 ...

重载的奥义之函数重载

一、基本定义 重载,顾名思义从字面上理解就是重复装载,打一个不恰当的比方,你可以用一个篮子装蔬菜,也可以装水果或者其它,使用的是同一个篮子,但是可以用篮子重复装载的东西不一样。 函数重载是C++多态(静态多态)的特征体现,它可以允许重复使用同一个函数名(篮子)的函数,但是函数的参数列表(篮子装的东西 ...

浅谈C语言编译原理

C语言 我们在学习计算机学科时,往往最先接触到的编程语言是C,它是所有语言中,最接近底层的高级语言之一,因而它具有执行速度快的优点。但它又具有开发周期长和对于经验不足的开发者极容易犯错的缺点。C语言应用范围广泛,你几乎可以在任何场景中看到它的影子。 C语言编译原理 一个编写好的C代码经过编译成可执行 ...

C++11:非受限联合体(union)

在 C/C++ 中,联合体(Union)是一种构造数据类型。在一个联合体内,我们可以定义多个不同类型的成员,这些成员将会共享同一块内存空间。老版本的 C++ 为了和C语言保持兼容,对联合体的数据成员的类型进行了很大程度的限制,这些限制在今天看来并没有必要,因此 C++11 取消了这些限制。 C++1 ...