自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 STL Iterators - Part 1

本文描述 了STL 迭代器,并介绍了泛型的中心思想。1.Iterators(迭代器)基本概念考虑一个简单的算法find.在序列中查找特定的值(元素的线性集合) 从beginning搜索,直到找到value或到达end作为一个抽象的算法,这是很清楚的,但是我们能不能在不指定我们处理的是什么样的序列的情况下实现它呢?任何实现都必须回答以下问题:如何指定序列的开始? 如...

2019-10-27 17:34:57 140

原创 如何改写一个类中虚函数的行为

我们都知道C++中的多态是通过虚函数来实现的。举个例子:class Base{public: virtual void display() { cout << "Base" << endl; }};class Derived1 :public Base{ void display() { cout << "Derived1"...

2019-09-14 23:43:06 318

原创 为什么你要尽量用auto

总的来说,使用auto可以帮助你实现正确、高效的变量声明,让代码更健壮,可维护性更高。1.auto更安全由于auto声明的变量,其类型推导自初始化物,所以他们必须被初始化。int x; //可以未初始化auto x; //error, 必须被初始化auto x = 1; //ok, x -> int这样就避免了你使用一个未初始化变量而不小心引出的bug。2....

2019-08-04 12:53:34 525

原创 C++中的左值和右值

如何定义左值和右值给出一个关于左值和右值的严格定义还是比较困难的,不过为了你快速的理解,你可以这么认为:C语言中,lvalue 是一个可以出现在赋值的左侧或右侧的表达式 ,而 rvalue 是一个只能出现在赋值的右侧的表达式。 比如说: int a = 42; int b = 43; // a and b are both l-values: a = b; // ok...

2019-08-03 18:58:32 329

原创 如何写一个可接受任意数量参数的函数

在 c++11之前,编写带有任意数量参数的函数的唯一方法是使用可变参数函数,最有名的要数 C Runtime Library 的 printf (...)。如果您曾经使用这种方法编写过代码,你就会知道这种方法有多么麻烦。 除了类型不安全之外,还需要纠正一些错误。而且,每次使用都要小心翼翼,说不定哪里就出错了。所以,下面给大家介绍一个超cool的东西,可变参数模板。可变参数模板直接来看...

2019-07-29 23:41:11 2924 1

原创 C++11中的lambda表达式

1.什么是lambdaC++ 98/03标准并不原生支持匿名函数,如果你想实现类似的功能的话,可以利用Boost.Lambda来实现一个匿名函数。但是从C++11以来,C++提供了我们一个强有力的工具,允许我们编写一个匿名的函数,它可以方便你写一些短小的代码,这些代码不会被重用,也不值得命名。 表达式最简单的定义如下:[ capture clause ] (parameters) -&g...

2019-07-28 12:15:50 143

原创 C++中的内联函数

1.什么是内联函数简单来说,在 c 和 c + + 编程语言中,一个带有inline标识符的函数,我们称其为inline函数。类似的函数标识符,还有virtual,explicit。明白了这个定义之后,我们接下来解释一下为什么需要内联函数。2.为什么需要内联函数我们都知道,当程序执行 function call 指令时,CPU会存储函数调用后指令的地址,复制堆栈上函数的参数,最后...

2019-07-27 15:31:15 235

转载 SQLSERVER 2016中文版下载和安装教程

Microsoft SQL Server 2016是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理。Microsoft SQL Server 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。简体中文企业版:文件名:cn_sql_server_2016_enterprise_x64_dvd_8699...

2019-04-07 11:22:52 13535 1

转载 可变长结构体

在Linux系统里,/usr/include/linux/if_pppox.h里面有这样一个结构:struct pppoe_tag {    __u16 tag_type;    __u16 tag_len;    char tag_data[0];} __attribute ((packed));最后一个成员为可变长的数组,对于TLV(Type-L

2017-10-20 13:31:14 1127

转载 函数指针作为某个函数的参数及定义函数指针

原文地址:http://blog.csdn.net/vlily/article/details/7244682一、 定义某一函数的指针类型:就像自定义数据类型一样,我们也可以先定义一个函数指针类型,然后再用这个类型来申明函数指针变量。我先给你一个自定义数据类型的例子。typedef int* PINT;    //为int* 类型定义了一个PINT的别名int main()

2017-10-18 14:05:15 1475

转载 理解typename的两个含义

原文地址:http://dev.yesky.com/13/2221013.shtml问题:在下面的 template declarations(模板声明)中 class 和 typename 有什么不同? template class Widget; // uses "class"template class Widget; // uses "typename"

2017-10-18 10:05:03 258

转载 提升 C++ 技能的 7 种方法

原文地址:http://blog.jobbole.com/112246/夏天时常会谈到大海、太阳、沙滩、大山或者你的家庭住宅。更充裕的时间也是夏天带来的好处之一。可能是因为你在休假,也可能是因为这段时间工作没有那么忙。无论是哪种情况,与一年中的其他季节相比,夏天的时间似乎更加宽裕。你有两个选择:1)把所有夏季空闲时间都用来休整,适当放松一下没什么不可以。2)或者你可以投入一部分空闲

2017-10-17 13:56:03 9898 2

转载 STL vector用法介绍

原文地址暂时不知,作者看到请联系。介绍这篇文章的目的是为了介绍std::vector,如何恰当地使用它们的成员函数等操作。本文中还讨论了条件函数和函数指针在迭代算法中使用,如在remove_if()和for_each()中的使用。通过阅读这篇文章读者应该能够有效地使用vector容器,而且应该不会再去使用C类型的动态数组了。 Vector总览vector是C++标准模板库中的部

2017-10-11 16:27:44 177

转载 C/C++基础知识:typedef用法小结

原文地址:http://www.kuqin.com/language/20090322/41866.html用途一:定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。比如:char* pa, pb; // 这多数不符合我们的意图,它只声明了一个指向字符变量的指针, // 和一个字符变量;以下则可行:typedef c

2017-09-26 09:23:10 192

转载 C++虚函数与纯虚函数用法与区别

1. 虚函数和纯虚函数可以定义在同一个类(class)中,含有纯虚函数的类被称为抽象类(abstract class),而只含有虚函数的类(class)不能被称为抽象类(abstract class)。  2. 虚函数可以被直接使用,也可以被子类(sub class)重载以后以多态的形式调用,而纯虚函数必须在子类(sub class)中实现该函数才可以使用,因为纯虚函数在基类(ba

2017-08-26 10:14:07 205

转载 C++ Virtual详解

原文地址:http://www.cnblogs.com/xd502djj/archive/2010/09/22/1832912.htmlVirtual是C++ OO机制中很重要的一个关键字。只要是学过C++的人都知道在类Base中加了Virtual关键字的函数就是虚拟函数(例如函数print),于是在Base的派生类Derived中就可以通过重写虚拟函数来实现对基类虚拟函数的覆盖。当基类B

2017-08-24 13:55:32 163

转载 Java包命名规则引发的思考

学习Java的童鞋们都知道,Java的包、类、借口、方法、变量、常量;JavaEE的三层模型等都有一套约定俗成的命名规则。    我学习每种语言都会关注相应的命名规则,一则体现自己比较专业;二来方便后检查,看到名称就知道是属于什么类型、占用多少内存、使用是否正确等;三又可以供其他人参考。    当然,学习Java也不例外,每次新建Java Project的时候都会想一下命名方式,尤

2017-08-22 17:24:18 187

转载 Mina 断线重连

原文地址: http://chwshuang.iteye.com/blog/2028951    定义:这里讨论的Mina 断线重连是指使用mina作为客户端软件,连接其他提供Socket通讯服务的服务器端。Socket服务器可以是Mina提供的服务器,也可以是C++提供的服务器。        一、断线重连的方式;    1. 在创

2017-08-04 14:36:03 373

转载 JAVA的网络编程

在博客园里面看到的,觉得讲的很明白,分享出来。由于看到的也是转载的,并没有给出原文地址。所以原文地址暂且不知。网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无法进入网络编程的大门而放弃了对于该部分技术的学习。         在 学习网络编程以前,很多初学者可能觉得网络编程是比较复杂的系统工程,需要了解很多和网络相关的基础知识

2017-08-02 14:00:03 364

转载 C++类静态成员与类静态成员函数

原文地址:http://blog.sina.com.cn/s/blog_5f0d72800100swkz.html当将类的某个数据成员声明为static时,该静态数据成员只能被定义一次,而且要被同类的所有对象共享。各个对象都拥有类中每一个普通数据成员的副本,但静态数据成员只有一个实例存在,与定义了多少类对象无关。静态方法就是与该类相关的,是类的一种行为,而不是与该类的实例对象相关。

2017-07-28 16:57:15 143

转载 C++中引用(&)的用法和应用实例

原文地址:http://www.cnblogs.com/Mr-xu/archive/2012/08/07/2626973.html对于习惯使用C进行开发的朋友们,在看到c++中出现的&符号,可能会犯迷糊,因为在C语言中这个符号表示了取地址符,但是在C++中它却有着不同的用途,掌握C++的&符号,是提高代码执行效率和增强代码质量的一个很好的办法。在 c++学习提高篇(3)---隐式指针的文章

2017-07-27 15:49:38 228

转载 深入理解HTTP Session

深入理解HTTP Session原文地址:   http://lavasoft.blog.51cto.com/62575/275589session在web开发中是一个非常重要的概念,这个概念很抽象,很难定义,也是最让人迷惑的一个名词,也是最多被滥用的名字之一,在不同的场合,session一次的含义也很不相同。这里只探讨HTTP Session。 

2017-07-26 15:56:54 178

转载 session机制详解以及session的相关应用

原文地址:http://www.cnblogs.com/sharpxiajun/p/3395607.htmlsession是web开发里一个重要的概念,在大多数web应用里session都是被当做现成的东西,拿来就直接用,但是一些复杂的web应用里能拿来用的session已经满足不了实际的需求,当碰到这样的情况时候我们需要更加深入的理解session的机制,本文将梳理下session的相关

2017-07-26 14:51:10 226

转载 同一端口如何区分不同的Socket

原文地址:http://blog.csdn.net/fansongy/article/details/7767129为了区分不同应用进程间的网络通信和连接,主要有3个参数:通信的目的IP地址、使用的传输层协议(TCP 或 UDP)和使用的端口号。    Socket的原意是“插座”。通过将这3个参数结合起来,与一个“插座”Socket绑定,应用层就可以和传输层通过套接字接口,区分来

2017-07-26 14:34:26 710

转载 设计模式的征途—2.简单工厂(Simple Factory)模式

原文地址:http://www.cnblogs.com/edisonchou/p/6683262.html工厂模式是最常用的一种创建型模式,通常所说的工厂模式一般是指工厂方法模式。本篇是是工厂方法模式的“小弟”,我们可以将其理解为工厂方法模式的预备知识,它不属于GoF 23种设计模式,但在软件开发中却也应用地比较频繁。此外,工厂方法模式还有一位“大哥”—抽象工厂模式,会在后面进行介绍。

2017-07-24 17:32:04 339

转载 设计模式的征途—1.单例(Singleton)模式

原文地址:http://www.cnblogs.com/edisonchou/p/6618503.html  单例模式属于创建型模式的一种,创建型模式是一类最常用的设计模式,在软件开发中应用非常广泛。创建型模式将对象的创建和使用分离,在使用对象时无需关心对象的创建细节,从而降低系统的耦合度,让设计方案更易于修改和扩展。每一个创建型模式都在视图回答3个问题:3W -> 创建什么(

2017-07-24 15:55:57 471

转载 设计模式的征途—14.职责链(Chain of Responsibility)模式

原地址:http://www.cnblogs.com/edisonchou/p/7215547.html相信大家都玩过类似于“斗地主”的纸牌游戏,某人出牌给他的下家,下家看看手中的牌,如果要不起,则将出牌请求转发给他的下家,其下家再进行判断。一个循环下来,如果其他人都要不起该牌,则最初的出牌者可以打出新牌。在这个过程中,纸牌作为一个请求沿着一条链在传递,每一位纸牌的玩家都可以处

2017-07-24 14:57:53 323 1

转载 TCP/IP图解

目录(?)[-]图解TCPIP读书笔记一国际惯例书托二网络基础知识  21 计算机使用模式的演变  22 协议  23 协议分层与OSI参考模型三TCPIP基础知识  31 TCPIP的背景及历史  32 TCPIP标准化  33 TCPIP协议分层模型四IP协议及相关技术  41 IP的主要作用  42 IP的三大作用模块  43 相关技术  1D

2017-07-24 14:13:37 1935

空空如也

空空如也

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

TA关注的人

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