
C++
nearcsy
Alielielielielielielielie
展开
-
C++初窥
之前做了几年的FPGA,期间也开发过STM32程序,仅限于根据需求点亮LED单色屏。可是随着工程的需求,以及越来越多的发现,虽然FPGA在做硬件(数据)加速尤其是算法层面数据预处理或者中间数据的处理有着非常天然的优势,也得益于FPGA特性---并行性以及一些高速接口,eg:DDR4/serDes/100G Ethernet...。但是在面对一些更加复杂算法时,实现难度也是几何级数的增加。并且现在x...原创 2018-07-01 22:49:14 · 200 阅读 · 0 评论 -
C++ ---- 对象数组
数组不仅可以由简单变量组成(例如整型数组的每一个元素都是整型变量),也可以由对象组成(对象数组的每一个元素都是同类的对象)。在日常生活中,有许多实体的属性是共同的,只是属性的具体内容不同。每一个数组元素是一个“类”的对象。Student stu[50]; //定义了stud数组,有50个元素。在建立数组时,同样要调用构造函数。如果有50个元素,就要调用50次。在定义...原创 2018-07-08 22:29:41 · 826 阅读 · 0 评论 -
C++深入了解类和对象 --- 构造函数(constructor)
类是一个抽象概念,abstract concept!甚至直接理解为void,并不占用memory。只有对象才是concrete concept,反映了客观事物的内在属性,是个具体值。所以不能在类的成员数据中对数据初始化。构造函数完美解决了对于多数据成员初始化的问题。构造函数是一种特殊的成员函数,不需要用户调用,而是在建立对象自动执行。构造函数的名字必须与类名相同,而不能由用户任意命名,以便编译系统...原创 2018-07-03 23:18:21 · 823 阅读 · 0 评论 -
C++ ---- 公用数据的保护
Achievements provide the only real pleasure in life.C++虽然采用了不少有效的措施(如设private保护)以增强数据的安全性,但是不同场合往往会不同的途经访问同一个数据对象。既要数据能在一定范围内共享,又要保证它不被任意修改,这时可以使用const,即有关的数据定义为常量。<1> 常对象定义对象时指定的对象为常对象。常对...转载 2018-07-24 23:39:35 · 488 阅读 · 0 评论 -
C++深入学习---构造函数的几种应用场景
上一章对所有对象采用一致赋值的方法,即对象调用构造函数,设置初值。但是这样有时候非常不灵活,因为对所有的对象,他们的initial value 都是一致的。有时候我们需要不同对象可能需要不同的初值,如此场景下,有了带参数的构造函数。1. 带参数的构造函数构造函数的一般格式为:构造函数名(类型1 形参1,类型2 形参2,···)定义对象的一般格式:类名 对象名(实参1,实参2,···);#inclu...原创 2018-07-07 17:01:25 · 956 阅读 · 0 评论 -
C++ --- 对象指针
在建立对象时,编译系统会为每一个对象分配一定的存储空间,以存放其成员。对象空间的起始地址就是对象的指针。可以定义一个指针变量,用来存放对象的指针。class Time{ public: int hour; int sec; void get_time();}void Time::get_time(){cout << hour << ":" &...原创 2018-07-13 18:39:08 · 781 阅读 · 0 评论 -
C++ ---- 析构函数
析构函数(distructor)是一种特殊的成员函数,与构造函数相反,名字在类名前面加一个“~”符号。对象生命周期结束时,会自动执行析构函数。有如下情况:<1> 如果在一个函数中定义一个对象,当这个函数被调用结束时,对象应该释放,在对象释放前自动执行析构函数。<2> static局部对象在函数调用结束时,对象并不释放,因此也不调用析构函数,只在main函数结束或者exit函...原创 2018-07-07 22:16:39 · 1947 阅读 · 0 评论 -
对象的操作 --- 动态建立/释放/赋值/复制
1. 动态建立与释放一般方法定义的对象是静态的,在程序运行中,对象所占用的空间不能随时释放的。C++/C语言中,可以用new运算符动态建立一个对象,用delete运算符撤销对象。new Box;系统开辟了一段内存空间,存放一个Box类对象,同时调用该类的构造函数,完成对象初始化。用new运算符动态分配内存后,将返回一个指向新对象的指针的值,即所分配的内存空间的起始地址。需要定义一个指...原创 2018-07-30 23:29:07 · 421 阅读 · 0 评论 -
C++ --- 静态数据成员
静态数据成员多个同类的对象之间实现数据共享,但是不用全局变量,可以用静态数据结构成员。因为全局变量的值可以在各处随意的修改,很可能因为一处失误,导致整个程序失败。#include <iostream>using namespace std;class Box{ public: Box(int, int); int volume(...原创 2018-07-31 23:35:09 · 2449 阅读 · 2 评论