自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (1)
  • 收藏
  • 关注

原创 设计模式之单例模式,懒汉模式与饿汉模式

设计模式之单例模式,懒汉模式与饿汉模式  单例模式是一种常用的软件设计模式,它保证在软件运行过程中对象在内存中只存在一份实例,单例模式通常有懒汉模式与饿汉模式。1.懒汉模式懒汉模式是在第一次调用的时候才创建实例,但是在多线程的环境下很可能创建多个实例,因此是线程不安全的。C++代码:class Singleton { protected: Singleton(){}

2017-12-16 19:42:22 423

原创 深度剖析C++析构函数

构造函数和析构函数在C中意味着生命周期的开始和结束,它们的实现原理相同。由于析构函数往往还设置成虚函数,所以这里我重点介绍下C析构函数的原理和各种场景。 一、析构函数的作用 当对象的生命周期结束时,会自动调用析构函数,以清理一些资源,比如释放内存、关闭文件、关闭数据库连接等等。 二、析构函数调用的时机 (1)基类析构 我们反汇编下查看上面代码: 从反汇编中可以看出,在对象离开它

2017-12-09 21:48:36 2418

原创 extern "C"使用总结

在C++源代码中,我们经常会看到下面的代码: #ifdef _cplusplus extern “C” { #endif /* ….. */ #ifdef _cplusplus #endif 那么它的作用是什么呢,其实extern "C"是C中的一种声明,它是告诉编译器将这部分代码按照C语言的形式进行编译和链接,我们都知道, C和C编译器对函数和变量的处理是完全不同的,因此

2017-11-26 13:33:09 362

转载 C\C++语言指针的强大用法之数组当作指针使用

在消息交互的结构体种,可能存在某些字段长度不固定,这时候我们很容易想到指针类型去实现这种功能,但是指针的增加玩玩会导致我们需要增加其内存的申请和释放,而且 在我们调用memcpy进行拷贝的时候只能进行浅拷贝(至于深拷贝和浅拷贝的概念大家不知道的网上查下就明白了),这会带来很多的不便。实际过程中,我们可以使用数组代替指针 的用法去避免这些不便,下面通过具体的例子来说明这个问题: 假如我们有两个

2017-11-18 18:33:24 1256

转载 C\C++语言指针的强大用法之减少内存申请次数

在我们编写程序时,可定会遇到下面比较复杂的结构体,结构体里面存在指针类型的结构,指针类型的结构又存在指针数据,这时候我们分配内存的时候自然而然会想到分配多次,同时还要释放多次,这样不但比较繁琐,而且效率也比较低。 下面我们举例 复杂结构体定义: 假设我们要定义一个Container类型的指针,并且含有一个Shape,此Shape有五个Point 传统我们的内存分配方式:

2017-11-18 17:10:08 402

转载 C语言实现try catch处理

我们都知道,在Java、C#等高级程序语言中,都自带有异常处理机制,其基本结构如下: try{ 程序语句; }catch(Exception ex){ 异常处理; } 这样做不但可以防止程序异常终止,而且在出现错误时可以及时作一些释放资源处理,对程序能继续健壮的运行下去尤其重要。 但是C语言中没有这样异常处理机制,我们可以通过宏定义去实现类似这样的操作,这时候就使用到C语言强大而

2017-11-18 13:09:00 31633

转载 初探验证码识别

0x00 背景介绍 全自动区分计算机和人类的图灵测试(英语:Completely Automated Public Turing test to tell Computers and Humans Apart,简称CAPTCHA),俗称验证码。CAPTCHA这个词最早是在2002年由卡内基梅隆大学的路易斯·冯·安、Manuel Blum、Nicholas J.Hopper以及IBM的John

2015-03-25 18:44:17 1096

原创 亚马逊mws-API(SubmitFeed)之订单配送详解

亚马逊mws订单配送总体分三个步骤 创建配送上传的xml ,格式大致如下                                                                              1.01 MYID OrderFulfillment 1 XXXXXXXXXXXXXXXX 201

2015-03-24 17:12:38 13338 4

原创 html学习之路(一):html发展历程

最近正在学Html5。HTML5是web开发世界的一次重大的改变,增加了许多新特性。 html历程 版本 年份 HTML 1991 HTML+ 1993 HTML 2.0 1997 HTML 3.2 1997 HTML 4.01 2000 HTML5 2012 XHTML5 2013

2015-03-18 12:23:31 444

谷歌翻译工具

谷歌客户端翻译工具,支持多国语言,方便快捷

2015-03-18

空空如也

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

TA关注的人

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