C++学习笔记四、C++多态和虚函数的实现机制

目录4.1 虚析构函数的必要性4.2 纯虚函数和抽象类4.3 C++的虚函数表,多态的实现机制 4.1 虚析构函数的必要性 将基类的析构函数声明为虚函数后,派生类的析构函数也会自动成为虚函数。这个时候编译器会忽略指针的类型,而根据指针的指向来选择函数;也就是说,指针指向哪个类的对象就调用哪个类的函...

2018-12-13 16:20:58

阅读数:18

评论数:0

C++学习笔记三、C++继承与派生

目录3.1 C++继承时的名字遮蔽3.2 C++继承时的内存模型3.3 有成员变量遮蔽时的内存分布3.4 多继承3.5 多继承时的内存模型 3.1 C++继承时的名字遮蔽 如果派生类中的成员(包括成员变量和成员函数)和基类中的成员重名,那么就会遮蔽从基类继承过来的成员。所谓遮蔽,就是在派生类中...

2018-12-13 10:58:42

阅读数:17

评论数:0

C++学习笔记二、C++类和对象

目录2.1 C++对象的内存模型2.2 2.1 C++对象的内存模型 直接看代码: #include <iostream> #include <stri...

2018-12-12 16:05:31

阅读数:23

评论数:0

C语言调用C++中的函数,extern "C"的含义

C++编译器在将cpp文件编译成库时,导出的函数名会改变,成员函数会通过加一些元素变成全局函数,如果这时候我们需要用C语言调用C++的函数,就有了一个问题,那就是不知道C++库中导出的函数名,这是由编译器决定的,这个时候就需要用到extern关键字。例子: test.cpp: int add(...

2018-12-12 14:57:27

阅读数:12

评论数:0

C++学习笔记一、C++初步

目录1.1 C++命名空间1.2 C++中的const1.2.1 C++中的const更像编译阶段的define1.2.2 C++中全局const变量的可见范围是当前文件 1.1 C++命名空间 在函数内部使用namespace: #include <i...

2018-12-12 11:45:11

阅读数:23

评论数:0

安卓强指针sp的作用和用法

    在安卓中,很多地方都用到了android::sp<XXX>这种东西,sp其实是一个模板类,实现了强指针,在C++中,如果我们new了一个对象,但是如果在该对象已经没用的时候没有delete掉,那么该对象就会一直占用内存,导致内存泄露,比如下面的程...

2018-04-17 17:21:47

阅读数:372

评论数:0

Git学习笔记

       前段时间学过Git,看的廖雪峰老师的教程,感觉通俗易懂很不错,地址:https://www.liaoxuefeng.com,今天又重新看了一遍,在这里记录一下重点。        Git介绍就不多说了,可以将多人协作开发项目变得很简单,安装Git: sudo apt-get inst...

2018-03-16 16:18:21

阅读数:46

评论数:0

windows下C语言实现自动版跳一跳详细教程

最近的微信小游戏跳一跳很火热,朋友圈很多人都上千分,自己也想着搞个辅助玩一玩,然后看了网上的很多辅助教程,但是大都是python写的代码,python好处很多,但是要下载很多依赖库,很多库又是国外的,无法下载,要运行起来就有很多困难,于是就想写一个C语言版本的辅助,这里参考了wangshub大神的...

2018-02-03 23:42:59

阅读数:1939

评论数:0

一个操作系统的实现笔记2:计算机的启动过程

在我们按下电脑电源键后,发生了什么?为什么过了一会儿电脑就出现漂亮的界面,然后我们就可以操作了呢。其实我们按下电源键之后无非就是CPU上电,然后取指令执行,那么CPU刚开始上电在哪里取指令执行呢?首先X86架构CPU在上电时会从FFFF:0000地址处取得第一条指令并执行,这个地址是实模式下的地址...

2017-09-19 16:05:02

阅读数:333

评论数:0

一个操作系统的实现笔记1:环境搭建

1、在虚拟机上装好linux,如ubuntu。 2、在ubuntu上安装bochs。 虚拟机安装linux就不说了,网上很多教程,说一下在ubuntu下安装bochs方法,先下载bochs源码:http://download.csdn.net/download/u014783685/9985590...

2017-09-19 14:55:35

阅读数:230

评论数:0

子网掩码的作用

子网掩码是局域网中必不可少的部分,当一台主机A向B发送信息时,主机A将目标IP(B的IP)和自己的子网掩码相与,得出的是B的网络号,然后将B的网络号和自己的网络号相比,如果相等就说明在同一个局域网,可以直接通信,直接把目标B的MAC写入数据链路层头部,如果不相等就说明不在同一个网络,就将目标MAC...

2017-09-08 09:47:20

阅读数:146

评论数:0

QT和linux实现简易远程聊天工具

1.实现功能: 打开客户端有一个登陆窗口,有登陆,注册两种功能(bug肯定很多),登陆成功会在左边显示在线用户数量和列表,点击对应的用户名即可给该用户发送消息,客户端还可以记录聊天记录,如果将服务器运行于云服务器或有公网ip的linux上,即可实现任意两台电脑之间的消息通信。 2.使用...

2017-08-23 21:16:57

阅读数:657

评论数:3

实现C++中的cout

在学习C++时,一直很好奇cout输出时用 代码如下: out.h: #ifndef OUT_H #define OUT_H namespace mystd { class mycout { public: mycout oper...

2017-08-20 17:01:02

阅读数:215

评论数:0

linux下使用open(),write(),给bmp图片打马赛克

本程序用于在linux下使用文件操作对bmp图片进行打马赛克,效果很不错。 对于bmp格式,只需要知道这两点,1,偏移为18byte的地方保存了bmp图片的宽度和高度,分别占4byte,2,偏移为54byte的地方为图片的数据区,若为24位彩色图,则一个像素占3byte空间。程序如下: /*=...

2017-07-26 13:45:38

阅读数:934

评论数:0

原始socket实现局域网ARP欺骗

本文参考了http://blog.chinaunix.net/uid-23069658-id-3280895.html, wjlkoorey258大神的文章,感谢ARPwjlkoorey258,欺骗的原理其实很简单,在局域网中,各个主机之间的通信是通过MACA地址识别的,比如: 主机A要给B主机发...

2017-07-17 11:33:39

阅读数:472

评论数:0

FPGA实现FIR滤波器

1、FIR滤波器总体设计 本设计是基于FPGA实现一个8阶的FIR数字低通滤波器。本次设计首先利用MATLAB中的FDAtool工具设计出一个采样频率为5KHZ、截止频率为1KHZ的FIR低通滤波器,通过FDAtool导出8点系数,然后将系数进行放大、取整,以便于在FPGA中使用,最后通过Qua...

2017-07-05 17:54:38

阅读数:4601

评论数:1

为什么定积分可以用原函数来计算?

最近看高数,看到定积分时,原函数可以用来求面积,一直没搞懂为什么,看微积分基本公式,让我难以想象出图形,本人太笨,大神勿喷  定积分可以用来计算面积,计算方法就是求出原函数,然后代入上下限值相减即可,那么为什么原函数代入上下限值相减就可以求出面积了呢? 一个图形的面积可以表示成下图: ...

2016-12-09 13:09:10

阅读数:3148

评论数:2

《一个操作系统的实现》笔记一,GDT(全局描述符)

一个操作系统的实现,于渊

2016-11-21 13:42:54

阅读数:704

评论数:0

从零开始学习FFT(快速傅里叶变换) 这也是我学习dft算法的心得,谢谢各位

本文是从最基础的知识开始讲解,力求用最通俗易懂的文字将问题将的通俗易懂,大神勿喷,多多指教啊,虽然说是从零学习FFT,但是基本的数学知识还是要有的,sin,cos,等。        FFT(快速傅里叶变换)其本质就是DFT,只不过可以快速的计算出DFT结果,要弄懂FFT,必须先弄懂DFT,DFT...

2016-03-03 20:45:27

阅读数:20143

评论数:13

DFT算法的理解和实现,望各位高手指点指点(谢谢)

DFT的公式:      其中X(k)表示DFT变换后的数据,x(n)为采样的模拟信号,公式中的x(n)可以为复信号,实际当中x(n)都是实信号,即虚部为0,此时公式可以展开为:        从这个公式可以看出,变换后的数据就是原信号对cos和sin的相关操作,即进行相乘求和(连续信...

2016-01-12 00:32:09

阅读数:2737

评论数:1

提示
确定要删除当前文章?
取消 删除
关闭
关闭