自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

叶黑子的专栏

慢慢解读坚持的真道

  • 博客(46)
  • 资源 (2)
  • 收藏
  • 关注

原创 简单易记的软件七大设计原则表述

开闭原则是总纲,它告诉我们要对扩展开放,对修改关闭;里氏替换原则告诉我们不要破坏继承体系;依赖倒置原则告诉我们要面向接口编程;单一职责原则告诉我们实现类要职责单一;接口隔离原则告诉我们在设计接口的时候要精简单一;迪米特法则告诉我们要降低耦合度;合成复用原则告诉我们要优先使用组合或者聚合关系复用,少用继承关系复用。...

2020-06-30 09:35:14 150

原创 Visual Studio 的远程调试

实现功能:虚拟机直接运行主机程序chrome.exe,主机可直接调试虚拟机运行的程序chrome.exe

2020-06-10 11:09:49 440

原创 谷歌浏览器的开源代码(M84版本)

准备工作1、开发工具:需要安装 VS20172、SDK: 需要 win10 sdk 18362版本3、固态硬盘:编译程序需要 90G 空间,编译时间约4个小时解压代码1、下载repo.7z, 解压到固态硬盘的根目录2、进入解压后的 repo 目录,可以查看文件编译步骤1、双击运行 env.bat,弹出命令行窗口2、生成gn工程gn gen out/Default --args="enable_nacl=false"3、生成VS解决方案文件gn...

2020-09-17 11:24:27 2389

原创 使用windbg进行dump分析基本使用和命令

1、启动windbg"C:\Program Files (x86)\Windows Kits\10\Debuggers\x86\windbg.exe" -y cache*g:\dump;srv*http://msdl.microsoft.com/download/symbols;g:\dump\19942 -srcpath G:\V68_45_new\srcdump分析常用指令dump分为:崩溃dump和运行dump分别如何查看?运行指令 .ecxr 崩溃dump查看崩溃点看堆栈 ...

2020-06-10 14:21:06 1420

原创 vs断点不生效原因和处理方案

一般原因:代码对应的符号不对应1、重新编译2、关闭设置端点的文件,重新打开3、重启vs4、查看对应符号设置确认你使用的是debug还是release,确保符号是正确的

2020-06-10 14:11:33 5812

原创 CString string char* char[] 之间的转换

2017-03-22 13:26:52 254

转载 单例模式的写法和应用

众多设计模式中,单例模式比较常见的一种,面试和工作中也会经常接触到。本文以一个C++开发者的角度来探讨单例模式几种典型实现。设计模式经典GoF定义的单例模式需要满足以下两个条件:1.   保证一个类只创建一个实例。2.   提供对该实例的全局访问点。如果系统有类似的实体(有且只有一个,且需要全局访问),那么就可以将其实现为一个单例。实际工作中常见的应用举例日志类,一个应用往往只

2016-04-08 14:57:39 581

转载 C++中new 一个对象的时候加括号和不加括号的区别

先把结论放上来: 加括号调用没有参数的构造函数,不加括号调用默认构造函数或唯一的构造函数,看需求 C++在new时的初始化的规律可能为:对于有构造函数的类,不论有没有括号,都用构造函数进行初始化;如果没有构造函数,则不加括号的new只分配内存空间,不进行内存的初始化,而加了括号的new会在分配内存的同时初始化为0。 以下代码:#include

2016-04-08 14:32:42 15397 6

转载 epoll函数的使用

http://blog.csdn.net/penzo/article/details/5986574

2016-03-15 16:10:05 349

转载 sockaddr与sockaddr_in结构体简介

struct sockaddr {unsigned  short  sa_family;     /* address family, AF_xxx */char  sa_data[14];                 /* 14 bytes of protocol address */};sa_family是地址家族,一般都是“AF_xxx”的形式。好像通常大多用的是都是AF

2016-03-15 10:07:13 406

转载 select的基本学习

Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。可是使用Select就可以完成非阻塞(所谓非阻塞方式

2016-03-09 10:07:43 386

转载 最基本的linux线程编写和锁的使用

#include #include #include #include #include int g_flag = 0;static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;static pthread_cond_t cond = PTHREAD_COND_INITIALIZER;void* thr

2016-03-04 15:36:32 299

转载 信号量的PV操作

进程通常分为就绪、运行和阻塞三个工作状态。三种状态在某些条件下可以转换,三者之间的转换关系如下: 进程三个状态之间的转换就是靠PV操作来控制的。PV操作主要就是P操作、V操作和信号量。其中信号量起到了至关重要的作用。 信号量信号量是最早出现的用来解决进程同步与互斥问题的机制。 信号量(Saphore)由一个值和一个指针组成,指针指向等待该信号量的进程。信号量的值表示

2015-04-15 15:22:24 730

转载 类在内存中的分配问题

一个类,有成员变量:静态与非静态之分;而成员函数有三种:静态的、非静态的、虚的。那么这些个东西在内存中到底是如何分配的呢?以一个例子来说明:[cpp] view plaincopy"font-size:16px;">  class CObject{public:static int a;CObject();

2015-03-17 16:25:00 430

转载 struct和typedef struct

1 首先://注意在C和C++里不同    在C中定义一个结构体类型要用typedef:    typedef struct Student    {    int a;    }Stu;    于是在声明变量的时候就可:Stu stu1;(如果没有typedef就必须用struct Student stu1;来声明)    这里的Stu实际上就是struct Stud

2015-03-17 15:49:18 374

转载 c++中new和delete的使用方法

new和delete运算符用于动态分配和撤销内存的运算符new用法:          1.     开辟单变量地址空间               1)new int;  //开辟一个存放数组的存储空间,返回一个指向该存储空间的地址.int *a = new int 即为将一个int类型的地址赋值给整型指针a.                2)int *a = new int(

2015-03-17 10:46:17 407

转载 用户级线程和内核级线程的区别

转载于http://col1.blog.163.com/blog/static/1909775192012719114033352/1 .内核级线程:切换由内核控制,当线程进行切换的时候,由用户态转化为内核态。切换完毕要从内核态返回用户态;可以很好的利用smp,即利用多核cpu。windows线程就是这样的。 2. 用户级线程内核的切换由用户态程序自己控制内核切换,不需要内核干涉,

2015-03-17 10:25:23 542

转载 关于C++ const 的全面总结

C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,本人根据各方面查到的资料进行总结如下,期望对朋友们有所帮助。Const 是C++中常用的类型修饰符,常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。一、Const作用   如下表所示:No.作用说明参考代码

2015-03-16 13:46:45 337

转载 RTP/RTCP协议介绍

1流媒体协议       当前在Internet上传输音频和视频等信息主要有两种方式:下载和流式传输。下载情况下,用户需要先下载整个媒体文件到本地,然后才能播放媒体文件。流式传输是指传输之前首先对多媒体进行预处理(降低质量和高效压缩),然后使用缓存系统来保证数据连续正确地进行传输。使用流式传输可以边下载边观看流媒体节目,可以实现网上直播、视频会议等。目前,支持流媒体

2014-11-21 14:12:41 546

原创 1106问题记录

1、CTpUmsServer,为什么要加Tp,代表什么意思?代表网呈 ,mt终端2、关于打印级别以及类型怎么区分?根据情况打印级别分为:enLoglowDetail = LOG_LVL_DETAIL,enLogLowest = LOG_LVL_KEYSTATUS,enLogHint = LOG_LVL_WARNING,enLogError = LOG_LVL_ERROR,

2014-11-07 13:35:21 651

转载 在C++中子类继承和调用父类的构造函数方法

在C++中子类继承和调用父类的构造函数方法  构造方法用来初始化类的对象,与父类的其它成员不同,它不能被子类继承(子类可以继承父类所有的成员变量和成员方法,但不继承父类的构造方法)。因此,在创建子类对象时,为了初始化从父类继承来的数据成员,系统需要调用其父类的构造方法。    如果没有显式的构造函数,编译器会给一个默认的构造函数,并且该默认的构造函数仅仅在没有显式地声明

2014-11-07 10:34:02 473

转载 xml的作用:

意见1:其实数年前已经不建议使用DTD了吧。而是推荐XML schema。XSL是转换XML文档用的。其实XML主要的用途就是分离数据和使用数据的应用程序。专注于对数据本身的描述,不涉及数据如何使用的信息,如表示格式的说明。文件本身的格式是自说明的。于是XML数据文件就很通用,各种语言都可以实现其PARSER。跨平台加标准的PARSER,相当适合平台/应用间交换数据之用。过去我们搞过EDI,用UN

2014-11-06 13:32:43 497

转载 const的用法

Const 作用1.   const类型定义:指明变量或对象的值是不能被更新,引入目的是为了取代预编译指令2.   可以保护被修饰的东西,防止意外的修改,增强程序的健壮性;3.   编译器通常不为普通const常量分配存储空间,而是将它们保存在符号表中,这使得它成为一个编译期间的常量,没有了存储与读内存的操作,使得它的效率也很高。4.    可以节省空间,避免不必要

2014-11-03 09:20:18 629

转载 实实在在说多态(C++篇)

实实在在说多态(C++篇)1.    什么是多态2.    多态带来的好处3.    C++中实现多态的方式4.    细说用函数重载实现的多态5.    细说用模板函数实现的多态6.    小结7.    细说用虚函数实现的多态7.1.     虚函数是怎么回事7.2.     向上转型7.3.     为什么要用指

2014-10-31 15:51:24 431

原创 static在C++中的应用

1 案例描述22 Static语法特性简介22.1修饰变量22.1.1静态全局变量22.1.2静态局部变量22.1.3静态数据成员22.2修饰函数22.2.1静态函数22.2.2静态成员函数33 应用场合33.1将变量/函数的作用域限定在本源文件中33.2保存函数的运行时信息33.3保存类对象共有的

2014-10-23 19:46:04 635

转载 类与类之间的几种关系

类与类之间的几种关系一、继承关系      继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力。在Java中继承关系通过关键字extends明确标识,在设计时一般没有争议性。在UML类图设计中,继承用一条带空心三角箭头的实线表示,从子类指向父类,或者子接口指向父接口。 二、实现关系      实现指的是一个class类实现

2014-10-20 16:28:42 443

转载 多态的概念和作用

多态是面向对象的重要特性,简单点说:“一个接口,多种实现”,就是同一种事物表现出的多种形态。编程其实就是一个将具体世界进行抽象化的过程,多态就是抽象化的一种体现,把一系列具体事物的共同点抽象出来, 再通过这个抽象的事物,与不同的具体事物进行对话。对不同类的对象发出相同的消息将会有不同的行为。比如,你的老板让所有员工在九点钟开始工作,他只要在九点钟的时候说:“开始工作”即可,而不需要对销售人

2014-10-20 13:54:24 724

转载 C++中public,protected,private访问

C++中public,protected,private访问第一:private, public, protected 访问标号的访问范围。private:只能由1.该类中的函数、2.其友元函数访问。不能被任何其他访问,该类的对象也不能访问。protected:可以被1.该类中的函数、2.子类的函数、以及3.其友元函数访问。但不能被该类的对象访问。public:

2014-10-16 19:23:07 328

转载 C++编程学习50个经典网站 强力推荐

C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建议,以进一步加强这方面的清单。1、http://snippets.dzone.com/tag/c/ --数以千计的有用的C语言源代码片段2、http://

2014-10-15 13:37:37 666

原创 关于我从事行业的认识以及我具体所做工作

。。。。

2014-10-09 14:18:51 726

原创 ftp编写总结

。。。。

2014-10-09 14:17:48 481

原创 银河面试总结

面试官很和蔼,本来面试前有点紧张地,当见到面试官后坐下来简单的聊了2句家常,就很是放松!然后做个简单的自我介绍,根据简历上的项目经验让我介绍了智能小车项目以及责任描述,自己做的项目还是很容易说的;下面聊得时候我说我对linux c和TCP/IP网络编程很熟悉,然后他就让我说一下客户端如何创建,然后她们用到了什么函数,这个问题没有回答完整,先创建socket   binding 绑定   conne

2013-11-25 21:22:45 1411

原创 电梯调度问题

电梯调度问题实际需求是这样的,电梯之前是在一楼,然后跑来一波研究僧,分别是到达不同的实验室。实验室分别是坐落在2楼至5楼。假设电梯是个巨无霸,容量是无穷的(实际上老逸夫楼那个估计已经年久失修,已经扛不住多少人了),然后某天,就假设是苦逼的星期一吧,依旧是一波研究僧要乘坐电梯,但是电梯星期一都是比较古怪的(只限于星期一),它只在其中的一层停下来,然后各层的研究僧只能下电梯,然后爬

2013-11-19 14:28:27 1461

转载 ZigBee基础概念和知识点

zigbeeZigbee是基于IEEE802.15.4标准的低功耗个域网协议根据这个协议规定的技术是一种短距离、低功耗的无线通信技术主要适合用于自动控制和远程控制领域,可以嵌入各种设备。简而言之,ZigBee就是一种便宜的,低功耗的近距离无线组网通讯技术。ZigBee协议从下到上分别为物理层(PHY)、媒体访问控制层(MAC)、传输层(TL)、网络层(NWK)、应用层(APL)等

2013-11-18 15:46:18 2428

原创 keil安装后无法打开,提示出错,重装仍然出错

可能是系统时间有问题,把电脑更新到当前时间

2013-11-18 15:15:26 3411

原创 ADS安装错误后无法卸载

直接用360软件强制粉粹,然后按照目录下的安装说明,进行安装

2013-11-18 15:12:41 2528

转载 一个简单的makefile示例及其注释

一个简单的makefile示例及其注释  相信在unix下编程的没有不知道makefile的,刚开始学习unix平台下的东西,了解了下makefile的制作,觉得有点东西可以记录下。  下面是一个极其简单的例子:现在我要编译一个Hello world,需要如下三个文件:  1. print.h      #include      void printh

2013-11-15 13:50:07 513

转载 linux下文件操作函数

Linux的文件操作API涉及到创建、打开、读写和关闭文件。1.linux API  创建int creat(const char *filename, mode_t mode);  参数mode指定新建文件的存取权限,它同umask一起决定文件的最终权限(mode&umask),其中umask代表了文件在创建时需要去掉的一些存取权限。u

2013-11-15 10:55:35 951

原创 南大奥拓笔试

南大奥拓笔试:软件滤波的方法?PLC的概念?和作用?中断的基本知识点?递归的算法: 实现N!的阶乘?题目很基本,其中一个编程题N!的阶乘编写的不全面,他应该考虑到输入负数输入浮点数以及阶乘的数字很大溢出等问题,记住0!= 1 嵌入式核心板(arm)以及他们用的操作系统和主要作用?ARM嵌入式系统和作用这个做硬件应该知道的,但是当时就没有答出来? 关于一个19

2013-11-12 21:11:41 2742

原创 10.10-11.8号笔试面试总结

富士通笔试题:第一次笔试:其中有很多C的基础题目都不会1、  黑盒测试和白盒测试黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。白盒测试:已知产品的内部工作过程,可以进行测试证明每种内部操作是否符合设计规格要求,所有内部成分是否经过检查。 2、  哈希表的填空题3、  数列菲普那锲数列的递归和非递归实现4、  链表的逆序编程题没有

2013-11-08 19:13:51 1152

寝室智能系统下位机51代码

   本次设计以采用STC89C52RC以及STM32107VC,实现无线遥控、光敏二极管等传感器来制作一个家居智能控制系统。采用无线遥控器代替机械式开关,来控制寝室常用电器,如电脑、音响等。解脱了有线机械式开关的束缚,实现远距离,任意角度对常用电器进行开关控制。使用各式传感器,并由智能CPU来对家用电器进行自动化控制,如自动给开窗,自动开启室内照明等。这种控制才真正算得上是自动化家居。

2012-11-09

智能避障寻迹小车完整程序

本系统在硬件设计方面,以STC15单片机为控制核心,以寻迹轨道、红外避障报警为辅。当遇到障碍会提前报警并且自动避障,在软件方面,利用C语言进行编程,通过软件编程来控制小车运转。当驾驶员疲劳驾驶的时候打开小车避障系统,当距离障碍一定距离的时候,避障系统会发出警报,以确保安全驾驶 该小车能自动循迹,自动避障并发出警报,有一定的实用价值。

2012-11-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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