- 博客(25)
- 资源 (3)
- 收藏
- 关注
转载 Nginx系列2之Nginx+php
what's FastCGi FastCGI是一个可伸缩,高速的在HTTP server和动态脚本语言间通信的接口。FastCGI支持多种脚本语言和HTTP server。 FCGI是由CGI发展改进而来的。传统的CGI接口方式的性能很差。每次HTTP服务器遇到动态程序时都需要重新启动脚本解释器来执行解析,然后将结果返回给HTTP服务器,这在处理高并发访问时几乎是不可用的。另外传统...
2019-01-18 10:49:28 280
转载 Nginx与PHP的交互
你确定你真的懂Nginx与PHP的交互? Nginx是俄国人最早开发的Webserver,现在已经风靡全球,相信大家并不陌生。PHP也通过二十多年的发展来到了7系列版本,更加关注性能。这对搭档在最近这些年,叱咤风云,基本上LNMP成了当下的标配。可是,你用了这么多年的Nginx+PHP的搭配,你真正知道他们之间是怎么交互怎么通信的么?作为一道常常用来面试的考题,从过往经验看,情况并不乐观。...
2019-01-18 10:39:06 162
转载 Linux进程之alarm()信号传送闹钟函数
最近在学习Linux系统编程遇到了一个很有意思的函数:alarm(),它是一个用来设置信号传送的闹钟函数。网上找了一些资料,结合自己的学习体会,现在Mark一下。1 alarm()函数说明[1] 引用头文件:#include ;[2] 函数标准式:unsigned int alarm(unsigned int seconds);[3] 功能与作用:alarm()函数的主要功
2016-05-04 09:57:28 6930 1
转载 C++面向对象设计的经验体会
关于C++程序设计的书藉非常多,本章不讲C++的语法,只讲一些小小的编程道理。如果我能早几年明白这些小道理,就可以大大改善数十万行程序的质量了。 1. C++面向对象程序设计的重要概念 早期革命影片里有这样一个角色,他说:“我是党代表,我代表党,我就是党。”后来他给同志们带来了灾难。 会用C++的程序员一定懂得面向对象程序设计吗? 不会用C++的程序员一定不
2014-10-21 17:23:52 432
转载 学C++备用资料
鸡啄米的这套VS2010/MFC编程入门教程到此就全部完成了,虽然有些内容还未涉及到,但帮助大家进行VS2010/MFC的入门学习业已足够。以此教程的知识为基础,学习VS2010/MFC较为深入的内容已非难事。作为本教程的最后一课,鸡啄米将对前面所讲内容进行目录归纳,并对这八个月加班加点的努力进行总结。 一、VS2010/MFC编程入门教程之目录 第一部分:VS20
2014-10-18 17:39:03 442
转载 C++_静态成员
C语言中的Static(不涉及到类)一句话描述C语言中static的作用:无论是针对变量还是函数:static作用都是修改变量的作用域静态成员的分类:静态成员包括静态变量和静态函数两部分静态变量静态全局变量引入的原因(作用):隐藏变量(主要功能)说明:即加了static,就会对其它源文件隐藏。具体来说,如果直接定义全局变量,则该全局变量相当于一个项目变量
2013-10-26 21:46:23 533
转载 C++_Const的使用(2)
3、与类有关的const1)const修饰成员变量:成员常量不能被修改初始化:方法一:只能在构造函数的初始化列表中赋值----比较常用[cpp] view plaincopyprint?class A { private: const int n; //成员常量不能被修改 public: A(int
2013-10-26 21:45:28 567
转载 C++_Const的使用
const的作用:表示被修饰变量受到强制保护,可以预防意外的变动,能提高程序的健壮性。const的用处:修饰函数的参数、返回值、函数的定义体,变量等,其中前面三个是其魅力所在。根据函数的组成,可以把const的作用分成三部分:const修饰函数的参数,const修饰函数体,const修饰函数返回值。一、用const 修饰函数的参数什么时候使用const:如果在函数体中只是对参数
2013-10-26 21:44:44 444
转载 C++_引用
引用的应用:常引用:语法:[cpp] view plaincopyprint?const 类型 &引用名=目标变量名; const 类型 &引用名=目标变量名;作用:防止通过引用对目标变量进行修改,达到了引用的安全性注意:是防止通过引用进行修改,但可以直接对变量进行修改使用范围:只要一个参数声明过来时只读的,都可以使用。常见有函数传参时,如
2013-10-26 21:43:34 501
转载 C++_多继承与虚基类
多继承的定义:派生类的基类大于一个语法:[cpp] view plaincopyprint?class 派生类名:继承方式1 基类名1,继承方式2 基类名2... { }; class 派生类名:继承方式1 基类名1,继承方式2 基类名2...{ };多重继承与构造函数的关系:多重继承时构造函数的作用:1)初
2013-10-26 21:42:51 641
转载 C++_多态与虚函数
什么是多态?一个 “操作” 随着所 ”传递或捆绑的对象类型的不同 “ 能够做出 ”不同的反应“,其行为模式称为多态。即,对这个操作,能接受不同类型的参数,而且在处理参数时,会根绝其类型做出不同的反应。为什么要引入多态?针对由继承得到一类对象,在处理这类对象时,能够以同一操作处理完所有对象。遇到的问题:[cpp] view plaincopyprint?
2013-10-26 21:40:43 485
转载 C++_继承与派生
继承的意义?使程序的设计更符合发展规律,即事物的发展是一个从低级到高级的发展过程,类的继承也是反映由原始的简单代码到丰富的高级代码的过程。它能帮助我们描述事物的层次关系,有效而精确的理解事物,理解事物直到本质。什么叫继承?(1)继承使类与类之间建立起一种上下级的层次关系(2)子类可以重复使用父类的操作和数据成员,子类可以声明新的属性和操作,还可以剔除不适合自己用途的父类操作。为
2013-10-26 21:39:44 579
转载 C++_输入常用函数
C++ 常用输入有:cin、cin.get( )、cin.getline( )C常用输入:getline( )、gets( )1、cin:-- 相当于scanf功能:输入字符串到字符输出,遇空格、Tab、回车结束代码:[cpp] view plaincopyprint?//输入字符串到字符数组 #include using namespace
2013-10-26 21:38:02 519 1
转载 C++_文本文件读写常用代码
数据测试:有一个文件file.txt,内容入下:[html] view plaincopyprint?This life will always love you. Let me always love you! If you have locked in my memory, and that the key to keeping your life on i
2013-10-26 21:37:13 521
转载 C++_文件读写
相关的头文件:#include 需要相关的类fstream提供三种类,实现C++对文件的操作ofstream:写操作,由ostream引申而来ifstream:读操作,由istream引申而来 fstream :同时读写操作,由iostream引申而来 文件的类型:文本文件 和 二进制文件文件读写的步骤:1、包含的头文件:#include 2、创建流3、打开
2013-10-26 21:36:29 716
转载 C++_模板举例_使用模板实现集合类(堆栈)
[cpp] view plaincopyprint?//stack集合类是一个简单的堆栈的实现。 //这里有两个模板参数,T和size,指定堆栈中的元素类型和堆栈中项数的最大值。 //push 和 pop成员函数添加和删除堆栈中的项,并在堆栈底部增加。 #include #include #include using namespace st
2013-10-26 21:35:28 678
转载 C++_类模板基础知识 (下)
类模板与模板类为什么要引入类模板:类模板是对一批仅仅成员数据类型不同的类的抽象,程序员只要为这一批类所组成的整个类家族创建一个类模板,给出一套程序代码,就可以用来生成多种具体的类,(这类可以看作是类模板的实例),从而大大提高编程的效率。注意:1、类模板是参数化的类,即用于实现数据类型参数化的类。2、应用类模板可以使类中的数据成员、成员函数的参数及成员函数的返回值,能根据模板参数匹配
2013-10-26 21:34:42 465
转载 C++_函数模板基础知识
为什么要引入模板:为了避免代码重复,程序员可以编写脱离数据类型通用模板。模板的分类:函数模板 + 类模板注意:模板的声明或定义只能在全局,命名空间或类范围内进行。不能在函数内进行,比如不能在main函数中声明或定义一个模板。函数模板:定义:函数模板:关键词在后两个字,模板:提供一类函数的抽象,以任意类型T为参数把具有相同程序正文的一类函数抽象出来,可以适合任意类型T的参数。
2013-10-26 21:26:26 481
转载 C++_运算符重载
什么是运算符的重载? 运算符与类结合,产生新的含义。 为什么要引入运算符重载? 作用:为了实现类的多态性(多态是指一个函数名有多种含义)怎么实现运算符的重载?方式:类的成员函数 或 友元函数(类外的普通函数)规则:不能重载的运算符有 . 和 .* 和 ?: 和 :: 和 sizeof友元函数和成员函数的使用场合:一般情况下,建议一元运
2013-10-26 21:25:53 491
转载 C++_指针悬挂和赋值操作符的重载
指针悬挂:问题:使用new申请的内存内存空间无法访问,也无法释放。原因:直接对指向new申请的存储空间的指针变量进行赋值修改后果:失去了原来的地址,原来的空间无法访问也无法释放,造成内存泄漏 还可能造成同一个内存释放两次容易引起指针悬挂的方式:对象的初始化和对象间赋值容易引起指针悬挂的条件:类中含有指针类型的成员时,使用默认的拷贝构造函数和赋值函数都会
2013-10-26 21:24:37 460
转载 C++_拷贝构造函数
为什么要引入拷贝构造函数? 作用:创建一个对象的同时,使用一个已经存在的对象给另一个对象赋值 具体来说:它将一个已经定义过对象的数据成员 逐一拷贝给 新对象,而产生两个完全相同的内存拷贝 做比较:拷贝构造函数:对象被创建 + 用一个已经存在的对象进行初始化 拷贝赋值函数:对象已经存在不用创建 +
2013-10-26 21:23:18 459
转载 C++_构造函数与析构函数
构造函数:作用: 1)分配空间:分配非静态数据成员的存储空间 2)初始化成员:初始化非静态数据成员分配空间: 1)含有指针变量,需要程序员显式申请空间(使用new申请) 2)非指针变量:由系统自动分配空间初始化成员: 1)使用赋值语句初始化:一般的变量 2)使用表达式表初始化:一般的变量 + Const成员,引用成员,对象成员调用时
2013-10-26 21:19:38 524
转载 C++_友元函数
1、为什么要引入友元函数:在实现类之间数据共享时,减少系统开销,提高效率 具体来说:为了使其他类的成员函数直接访问该类的私有变量 即:允许外面的类或函数去访问类的私有变量和保护变量,从而使两个类共享同一函数 优点:能够提高效率,表达简单、清晰 缺点:友元函数破环了封装机制,尽量不使用成员函数,除非不得已的情况下才使用友元函数。2、什么时候
2013-10-26 21:16:02 419
转载 C++_static关键字
C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。1.面向过程设计中的static1.1静态全局变量在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量。我们先举一个静态全局变量的例子,如下: //Example 1#include
2013-10-26 21:14:35 409
转载 C++虚拟继承
1.为什么要引入虚拟继承虚拟继承是多重继承中特有的概念。虚拟基类是为解决多重继承而出现的。如:类D继承自类B1、B2,而类B1、B2都继承自类A,因此在类D中两次出现类A中的变量和函数。为了节省内存空间,可以将B1、B2对A的继承定义为虚拟继承,而A就成了虚拟基类。实现的代码如下:class Aclass B1:public virtual A;class B2:public vi
2013-10-26 21:12:59 394
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人