<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ken_lyy的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ken_lyy</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ken_lyy]]></copyright><item><title><![CDATA[Nginx系列2之Nginx+php]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/86536067</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/86536067</guid><author>ken_lyy</author><pubDate>Fri, 18 Jan 2019 10:49:28 +0800</pubDate><description><![CDATA[ 

what's FastCGi

  FastCGI是一个可伸缩，高速的在HTTP server和动态脚本语言间通信的接口。FastCGI支持多种脚本语言和HTTP server。
  FCGI是由CGI发展改进而来的。传统的CGI接口方式的性能很差。每次HTTP服务器遇到动态程序时都需要重新启动脚本解释器来执行解析，然后将结果返回给HTTP服务器，这在处理高并发访问时几乎是不可用的。另外传统...]]></description><category></category></item><item><title><![CDATA[Nginx与PHP的交互]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/86535813</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/86535813</guid><author>ken_lyy</author><pubDate>Fri, 18 Jan 2019 10:39:06 +0800</pubDate><description><![CDATA[你确定你真的懂Nginx与PHP的交互？

 

Nginx是俄国人最早开发的Webserver，现在已经风靡全球，相信大家并不陌生。PHP也通过二十多年的发展来到了7系列版本，更加关注性能。这对搭档在最近这些年，叱咤风云，基本上LNMP成了当下的标配。可是，你用了这么多年的Nginx+PHP的搭配，你真正知道他们之间是怎么交互怎么通信的么？作为一道常常用来面试的考题，从过往经验看，情况并不乐观。...]]></description><category></category></item><item><title><![CDATA[Linux进程之alarm()信号传送闹钟函数]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/51312466</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/51312466</guid><author>ken_lyy</author><pubDate>Wed, 04 May 2016 09:57:28 +0800</pubDate><description><![CDATA[最近在学习Linux系统编程遇到了一个很有意思的函数：alarm()，它是一个用来设置信号传送的闹钟函数。网上找了一些资料，结合自己的学习体会，现在Mark一下。

1 alarm()函数说明

[1] 引用头文件：#include ;

[2] 函数标准式：unsigned int alarm(unsigned int seconds);

[3] 功能与作用：alarm()函数的主要功]]></description><category></category></item><item><title><![CDATA[C++面向对象设计的经验体会]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/40348197</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/40348197</guid><author>ken_lyy</author><pubDate>Tue, 21 Oct 2014 17:23:52 +0800</pubDate><description><![CDATA[关于C++程序设计的书藉非常多，本章不讲C++的语法，只讲一些小小的编程道理。如果我能早几年明白这些小道理，就可以大大改善数十万行程序的质量了。

　　1. C++面向对象程序设计的重要概念

　　早期革命影片里有这样一个角色，他说：“我是党代表，我代表党，我就是党。”后来他给同志们带来了灾难。

　　会用C++的程序员一定懂得面向对象程序设计吗？

　　不会用C++的程序员一定不]]></description><category></category></item><item><title><![CDATA[学C++备用资料]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/40213167</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/40213167</guid><author>ken_lyy</author><pubDate>Sat, 18 Oct 2014 17:39:03 +0800</pubDate><description><![CDATA[鸡啄米的这套VS2010/MFC编程入门教程到此就全部完成了，虽然有些内容还未涉及到，但帮助大家进行VS2010/MFC的入门学习业已足够。以此教程的知识为基础，学习VS2010/MFC较为深入的内容已非难事。作为本教程的最后一课，鸡啄米将对前面所讲内容进行目录归纳，并对这八个月加班加点的努力进行总结。
       一、VS2010/MFC编程入门教程之目录
       第一部分：VS20]]></description><category></category></item><item><title><![CDATA[C++_静态成员]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13151521</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13151521</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:46:23 +0800</pubDate><description><![CDATA[C语言中的Static（不涉及到类）
一句话描述C语言中static的作用：
无论是针对变量还是函数：static作用都是修改变量的作用域
静态成员的分类：
静态成员包括静态变量和静态函数两部分

静态变量
静态全局变量

引入的原因（作用）：隐藏变量（主要功能）
说明：即加了static，就会对其它源文件隐藏。
具体来说，如果直接定义全局变量，则该全局变量相当于一个项目变量]]></description><category></category></item><item><title><![CDATA[C++_Const的使用(2)]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13151263</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13151263</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:45:28 +0800</pubDate><description><![CDATA[3、与类有关的const
1）const修饰成员变量：成员常量不能被修改初始化：
方法一：只能在构造函数的初始化列表中赋值----比较常用


[cpp] 
view plaincopyprint?


class A      {        private:      const int n;   //成员常量不能被修改    
  public:       A(int]]></description><category></category></item><item><title><![CDATA[C++_Const的使用]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13150981</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13150981</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:44:44 +0800</pubDate><description><![CDATA[const的作用：表示被修饰变量受到强制保护，可以预防意外的变动，能提高程序的健壮性。
const的用处：修饰函数的参数、返回值、函数的定义体，变量等，其中前面三个是其魅力所在。
根据函数的组成，可以把const的作用分成三部分：const修饰函数的参数，const修饰函数体，const修饰函数返回值。
一、用const 修饰函数的参数
什么时候使用const：
如果在函数体中只是对参数]]></description><category></category></item><item><title><![CDATA[C++_引用]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13150625</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13150625</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:43:34 +0800</pubDate><description><![CDATA[引用的应用：
常引用：
语法：


[cpp] 
view plaincopyprint?


const 类型 &引用名=目标变量名;  

const 类型 &引用名=目标变量名;
作用：防止通过引用对目标变量进行修改，达到了引用的安全性
注意：是防止通过引用进行修改，但可以直接对变量进行修改
使用范围：只要一个参数声明过来时只读的，都可以使用。常见有函数传参时，如]]></description><category></category></item><item><title><![CDATA[C++_多继承与虚基类]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13150417</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13150417</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:42:51 +0800</pubDate><description><![CDATA[多继承的定义：派生类的基类大于一个
语法:


[cpp] 
view plaincopyprint?


class  派生类名:继承方式1 基类名1，继承方式2 基类名2...  {        };  

class  派生类名:继承方式1 基类名1，继承方式2 基类名2...
{
	
};

多重继承与构造函数的关系：
多重继承时构造函数的作用：
1）初]]></description><category></category></item><item><title><![CDATA[C++_多态与虚函数]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13149897</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13149897</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:40:43 +0800</pubDate><description><![CDATA[什么是多态？
一个 “操作” 随着所 ”传递或捆绑的对象类型的不同 “ 能够做出 ”不同的反应“，其行为模式称为多态。
即，对这个操作，能接受不同类型的参数，而且在处理参数时，会根绝其类型做出不同的反应。
为什么要引入多态？
针对由继承得到一类对象，在处理这类对象时，能够以同一操作处理完所有对象。
遇到的问题：



[cpp] 
view plaincopyprint?
]]></description><category></category></item><item><title><![CDATA[C++_继承与派生]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13149579</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13149579</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:39:44 +0800</pubDate><description><![CDATA[继承的意义？
使程序的设计更符合发展规律，即事物的发展是一个从低级到高级的发展过程，类的继承也是反映由原始的简单代码到丰富的高级代码的过程。它能帮助我们描述事物的层次关系，有效而精确的理解事物，理解事物直到本质。
什么叫继承？
（1）继承使类与类之间建立起一种上下级的层次关系
（2）子类可以重复使用父类的操作和数据成员，子类可以声明新的属性和操作，还可以剔除不适合自己用途的父类操作。
为]]></description><category></category></item><item><title><![CDATA[C++_输入常用函数]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13149093</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13149093</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:38:02 +0800</pubDate><description><![CDATA[C++ 常用输入有：cin、cin.get( )、cin.getline( )
C常用输入：getline( )、gets( )
1、cin：-- 相当于scanf
功能：输入字符串到字符输出，遇空格、Tab、回车结束
代码：


[cpp] 
view plaincopyprint?


//输入字符串到字符数组   #include    using namespace ]]></description><category></category></item><item><title><![CDATA[C++_文本文件读写常用代码]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13148833</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13148833</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:37:13 +0800</pubDate><description><![CDATA[数据测试：有一个文件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]]></description><category></category></item><item><title><![CDATA[C++_文件读写]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13148571</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13148571</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:36:29 +0800</pubDate><description><![CDATA[相关的头文件：#include 
需要相关的类
fstream提供三种类，实现C++对文件的操作
ofstream：写操作，由ostream引申而来
ifstream：读操作，由istream引申而来 
fstream ：同时读写操作，由iostream引申而来 
文件的类型：文本文件 和 二进制文件
文件读写的步骤：
1、包含的头文件：#include 
2、创建流
3、打开]]></description><category></category></item><item><title><![CDATA[C++_模板举例_使用模板实现集合类(堆栈)]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13148277</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13148277</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:35:28 +0800</pubDate><description><![CDATA[[cpp] 
view plaincopyprint?


//stack集合类是一个简单的堆栈的实现。   //这里有两个模板参数，T和size，指定堆栈中的元素类型和堆栈中项数的最大值。 
  //push 和 pop成员函数添加和删除堆栈中的项，并在堆栈底部增加。
  #include    #include  
  #include    using namespace st]]></description><category></category></item><item><title><![CDATA[C++_类模板基础知识 (下)]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13146121</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13146121</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:34:42 +0800</pubDate><description><![CDATA[类模板与模板类
为什么要引入类模板：类模板是对一批仅仅成员数据类型不同的类的抽象，程序员只要为这一批类所组成的整个类家族创建一个类模板，给出一套程序代码，就可以用来生成多种具体的类，(这类可以看作是类模板的实例)，从而大大提高编程的效率。
注意：
1、类模板是参数化的类，即用于实现数据类型参数化的类。
2、应用类模板可以使类中的数据成员、成员函数的参数及成员函数的返回值，能根据模板参数匹配]]></description><category></category></item><item><title><![CDATA[C++_函数模板基础知识]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13145531</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13145531</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:26:26 +0800</pubDate><description><![CDATA[为什么要引入模板：为了避免代码重复，程序员可以编写脱离数据类型通用模板。
模板的分类：函数模板 + 类模板
注意：模板的声明或定义只能在全局，命名空间或类范围内进行。不能在函数内进行，比如不能在main函数中声明或定义一个模板。
函数模板:
定义：
函数模板：关键词在后两个字，模板：提供一类函数的抽象，以任意类型T为参数把具有相同程序正文的一类函数抽象出来，可以适合任意类型T的参数。
]]></description><category></category></item><item><title><![CDATA[C++_运算符重载]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13145369</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13145369</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:25:53 +0800</pubDate><description><![CDATA[什么是运算符的重载?
         运算符与类结合，产生新的含义。 
为什么要引入运算符重载？
         作用：为了实现类的多态性(多态是指一个函数名有多种含义)
怎么实现运算符的重载？
方式：类的成员函数 或 友元函数（类外的普通函数）
规则：不能重载的运算符有 .  和 .* 和 ?: 和 ::  和 sizeof
友元函数和成员函数的使用场合：一般情况下，建议一元运]]></description><category></category></item><item><title><![CDATA[C++_指针悬挂和赋值操作符的重载]]></title><link>https://blog.youkuaiyun.com/ken_lyy/article/details/13145013</link><guid>https://blog.youkuaiyun.com/ken_lyy/article/details/13145013</guid><author>ken_lyy</author><pubDate>Sat, 26 Oct 2013 21:24:37 +0800</pubDate><description><![CDATA[指针悬挂：
问题：使用new申请的内存内存空间无法访问，也无法释放。
原因：直接对指向new申请的存储空间的指针变量进行赋值修改
后果：失去了原来的地址，原来的空间无法访问也无法释放，造成内存泄漏
            还可能造成同一个内存释放两次
容易引起指针悬挂的方式：对象的初始化和对象间赋值
容易引起指针悬挂的条件：类中含有指针类型的成员时，使用默认的拷贝构造函数和赋值函数都会]]></description><category></category></item></channel></rss>