<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[kluleia的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/kluleia</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; kluleia]]></copyright><item><title><![CDATA[什么情况下需要加extern "C"，通俗易懂]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/45077875</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/45077875</guid><author>kluleia</author><pubDate>Thu, 16 Apr 2015 17:13:37 +0800</pubDate><description><![CDATA[下午看了一些关于extern "C"的博客，都写得很啰嗦，看来看去还是有一些细节不怎么了解，自己开了个程序测试了一下，总结了什么情况下需要加入extern “C”

首先c++和c语言编译器在将cpp编译成.o文件的时候对函数的编译方式是不一样的
例如函数void foo(int)
c++编译器会编译成_int_foo
c语言编译器会编译成_foo()

同样c++和c语言在链接的时]]></description><category></category></item><item><title><![CDATA[我们应当怎样做需求分析]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/45039561</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/45039561</guid><author>kluleia</author><pubDate>Tue, 14 Apr 2015 11:22:25 +0800</pubDate><description><![CDATA[又到新年了，日历又要从2011年翻到2012年了，这使我有太多的感慨，进而勾起了对太多往事的回忆。过去的10年，毫无疑问是中国软件业发展最快的10年。当我们刚刚毕业的时候，还在使用VB、PB开发一些简单的数据库应用，而现在却几乎看不到它们的踪影，换来的是诸如J2EE和.NET这样的大型web应用。而这期间，RUP、XP、敏捷开发、持续集成??????一个接一个的新概念层出不穷，令人眼花缭乱。现在想]]></description><category></category></item><item><title><![CDATA[windows配置DB2 ODBC CLI接口的开发环境]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/44976845</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/44976845</guid><author>kluleia</author><pubDate>Fri, 10 Apr 2015 11:30:22 +0800</pubDate><description><![CDATA[IBM提供了多种方式来配置DB2的驱动程序，为了缩小安装包，我选择了轻量安装包
IBM
 Data Server Driver for ODBC and CLI ：下载地址-https://delivery04.dhe.ibm.com/sdfdl/v2/sar/CM/IM/03cfr/0/Xa.2/Xb.jusyLTSp44S0MS82N3AkFRms64kukKeT9jY_WWJ_lS6QS]]></description><category></category></item><item><title><![CDATA[小记---怎么样从0开始做需求]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/44944743</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/44944743</guid><author>kluleia</author><pubDate>Wed, 08 Apr 2015 18:36:57 +0800</pubDate><description><![CDATA[我怎么样从零开始做需求
首先这个文章不是教别人怎么样做需求，而是说说我今天遇到的一个事情，还有学习到的一点东西，以备后忘。更主要的目的是想借着这个文章整理一下自己对产（需）品（求）经（分）理（析）这个职位工作的一些理解，说不定哪天去找一份产品经理的工作还能用得上。

好吧废话少说，言归正传。
事情是这样的，昨天我们老板告诉我，今天会有个老板(我刚才校门的老板)，会来我们公司了解一下我们的产]]></description><category></category></item><item><title><![CDATA[使用otl监控oracle和DB2代码封装]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/44922227</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/44922227</guid><author>kluleia</author><pubDate>Tue, 07 Apr 2015 16:34:56 +0800</pubDate><description><![CDATA[#ifndef _OTL_ORACLE_H_
#define _OTL_ORACLE_H_

#ifdef WIN32
#include 
#endif
#include 
#include 
#include 
#include 
#define OTL_DB2_CLI //OTL_ORA9I
#include "../otlv4.h"
namespace thefox{
	namespac]]></description><category></category></item><item><title><![CDATA[共享boost::deadline_timer封装模板，可以接受任何函数对象]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/43560085</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/43560085</guid><author>kluleia</author><pubDate>Fri, 06 Feb 2015 09:23:44 +0800</pubDate><description><![CDATA[//
// fox_timer.hpp
// ~~~~~~~~~~~~~~~~
//
// Copyright (c) 2014-2015 yoen.xu (181471112 at  qq dot com)
//
//说明
//eg:  fox_timer::run(io_, func, interval);
//     T 为func的返回类型,当T为int的时候（范围值-1]]></description><category></category></item><item><title><![CDATA[C++类型转换 static_cast、dynamic_cast、const_cast、reinterpret_cast]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/30483593</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/30483593</guid><author>kluleia</author><pubDate>Fri, 13 Jun 2014 14:21:26 +0800</pubDate><description><![CDATA[强制类型转换运算符：C++有四种强制类型转换符，分别是dynamic_cast，const_cast，static_cast，reinterpret_cast。其中dynamic_cast与运行时类型转换密切相关，在这里我们先介绍dynamic_cast，其他三种在后面介绍。  
6.1、dynamic_cast强制转换运算符：该转换符用于将一个指向派生类的基类指针或引用转换为派生类的指针或引用]]></description><category></category></item><item><title><![CDATA[gdb常用命令]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/30466347</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/30466347</guid><author>kluleia</author><pubDate>Fri, 13 Jun 2014 11:13:39 +0800</pubDate><description><![CDATA[当程序出错并产生core 时

　　快速定位出错函数的办法

　　gdb 程序名 core文件名(一般是core,也可能是core.xxxx)

　　调试程序使用的键

　　r run 运行.程序还没有运行前使用

　　c cuntinue 继续运行。运行中断后继续运行

　　q 退出

　　kill 终止调试的程序

　　h help 帮助

　　 命令补全功]]></description><category></category></item><item><title><![CDATA[const的各种用途]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/30028649</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/30028649</guid><author>kluleia</author><pubDate>Wed, 11 Jun 2014 09:33:18 +0800</pubDate><description><![CDATA[1. const修饰普通变量和指针


const修饰变量，一般有两种写法：


const TYPE value;


TYPE const value;


这两种写法在本质上是一样的。它的含义是：const修饰的类型为TYPE的变量value是不可变的。


对于一个非指针的类型TYPE，无论怎么写，都是一个含义，即value只不可变。


例如：

]]></description><category></category></item><item><title><![CDATA[C++标准io库知识整理]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/20625151</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/20625151</guid><author>kluleia</author><pubDate>Thu, 06 Mar 2014 16:01:17 +0800</pubDate><description><![CDATA[今天在写一个文件读写操作得时候，发现知识体现严重混乱，没办法忙写，都是借助百度才搞定的。为此下午决定好好的总结一下c++标准io库的相关知识,用自己平时将ppt的思路来写整理这个文档。
1.标准IO库是什么东西？
C++的输入输出库由标准库（标准库是什么东西就不解释了）提供。标准库定义了一族类型，支持对文件和控制窗口（如我们通常看到的屏幕输出，或者黑窗口吧）等设备的读写。还定义了其他一些类型，]]></description><category></category></item><item><title><![CDATA[做好产品需求文档的这十步]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/20619117</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/20619117</guid><author>kluleia</author><pubDate>Thu, 06 Mar 2014 12:45:46 +0800</pubDate><description><![CDATA[做好产品需求文档的这十步，是经过长期的实践经验和反复验证而得到的。可能这里描述的不是很全面，但他已经足够让你做一个成功的产品需求文档。做好这几步花费的时间要以项目的大小、复杂程度、个体学识、基本技能熟练度而定。

第一步：做好准备工作

你要做的是一个让人无可争议的产品，为了做好他，你必须做好前期的准备工作。你需要去了解你的顾客、竞争对手、产品团队的实力和需要的技术。你需要从顾客、用户、竞]]></description><category></category></item><item><title><![CDATA[使用svn开发，目录的约定与开发流程]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/18595199</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/18595199</guid><author>kluleia</author><pubDate>Tue, 21 Jan 2014 09:06:15 +0800</pubDate><description><![CDATA[Subversion有一个很标准的目录结构，是这样的。
比如项目是proj，svn地址为svn://proj/，那么标准的svn布局是

svn://proj/
|
+-trunk
+-branches
+-tags
这是一个标准的布局，trunk为主开发目录，branches为分支开发目录，tags为tag存档目录（不允许修改）。但是具体这几个目录应该如何使用，svn并没有明确的规范，更]]></description><category></category></item><item><title><![CDATA[linux下手动编译安装LAMP平台]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/18311701</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/18311701</guid><author>kluleia</author><pubDate>Wed, 15 Jan 2014 15:21:35 +0800</pubDate><description><![CDATA[编译安装LAMP平台
软件版本都是最新稳定版本：apache 2.2.19  mysql 5.5.14  php 5.3.6
源码包编译安装位置(prefix)        /usr/local/webserver

1、移除系统自带的rpm包的http mysql php
# yum remove httpd mysql mysql-server php php-cli php-co]]></description><category></category></item><item><title><![CDATA[使用mysql-proxy和binlog来实现mysql读写分离]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/18259201</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/18259201</guid><author>kluleia</author><pubDate>Tue, 14 Jan 2014 11:23:46 +0800</pubDate><description><![CDATA[1.3 db proxy

在大型互联网站的数据库部署中，部署最多的数据库为MySQL。随着MySQL中Innodb存储引擎对事物的支持，MySQL在互联网公司部署中，应用量越来越多。典型应用MySQL的公司有Google、Baidu、Taobao等大型互联网公司。MySQL的优势在于其高扩展性和价格优势等。实际上，MySQL可以免费应用于企业级的部署中。

在MySQL复制方式部署中，有]]></description><category></category></item><item><title><![CDATA[dom事件汇总]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/17549327</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/17549327</guid><author>kluleia</author><pubDate>Wed, 25 Dec 2013 09:27:22 +0800</pubDate><description><![CDATA[方法
描述


bind()
向匹配元素附加一个或更多事件处理器


blur()
触发、或将函数绑定到指定元素的 blur 事件


change()
触发、或将函数绑定到指定元素的 change 事件


click()
触发、或将函数绑定到指定元素的 click 事件


dblclick()
触发、或将函数绑定到指定元素的 double click]]></description><category></category></item><item><title><![CDATA[产品经理书籍]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/17419391</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/17419391</guid><author>kluleia</author><pubDate>Thu, 19 Dec 2013 17:21:31 +0800</pubDate><description><![CDATA[《引爆点》——产品市场与运营推广
　　《长尾理论》——产品市场
　　《魔鬼经济学》——产品市场
　　《影响力》——产品市场
　　《怪诞行为学》——产品市场与用户行为必读
　　《用户体验的要素》——你们都懂的
　　《就这么简单》——用户体验科普
　　《Don’t make me think》
　　《锦绣蓝图》——怎样规划令人流连忘返的网站
　　《Web信息架构》——Web信息架构必]]></description><category></category></item><item><title><![CDATA[JS闭包深入详解]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/17281083</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/17281083</guid><author>kluleia</author><pubDate>Thu, 12 Dec 2013 12:53:18 +0800</pubDate><description><![CDATA[JS闭包深入详解

最近在网上查阅了不少Javascript闭包(closure)相关的资料，写的大多是非常的学术和专业。对于初学者来说别说理解闭包了，就连文字叙述都很难看懂。撰写此文的目的就是用最通俗的文字揭开Javascript闭包的真实面目。
一、什么是闭包？
“官方”的解释是：闭包是一个拥有许多变量和绑定了这些变量的环境的表达式（通常是一个函数），因而这些变量也是该表达式的一部分。]]></description><category></category></item><item><title><![CDATA[学习网站]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/17280897</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/17280897</guid><author>kluleia</author><pubDate>Thu, 12 Dec 2013 12:34:43 +0800</pubDate><description><![CDATA[更贴！！！后续在整理]]></description><category></category></item><item><title><![CDATA[js创建对象的集中方法]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/17280875</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/17280875</guid><author>kluleia</author><pubDate>Thu, 12 Dec 2013 12:33:08 +0800</pubDate><description><![CDATA[本文讨论几种js创建对象的方法，先从最好理解的工厂模式开始： 
复制代码 代码如下:

function createPerson(name,age,job){ 
var o = {}; 
o.name = name; 
o.age = age; 
o.job = job; 
o.sayName = function(){ 
alert(this.name); 
}; 
re]]></description><category></category></item><item><title><![CDATA[VC程序Release程序崩溃后问题根源查找]]></title><link>https://blog.youkuaiyun.com/kluleia/article/details/16842539</link><guid>https://blog.youkuaiyun.com/kluleia/article/details/16842539</guid><author>kluleia</author><pubDate>Wed, 20 Nov 2013 12:54:39 +0800</pubDate><description><![CDATA[如何去做崩溃后的定位是一个有效的方法。
1. 可以先利用连接器的配置，产生 map 文件：
在 VC Project Setting 对话框中打开 Generate mapfile，然后在Project Options对话框中键入“/mapinfo:lines /mapinfo:exports”，这样在 ./release 目录下就有 .pdb 文件了。
然后在配合 这个方法 就可以获取源码]]></description><category></category></item></channel></rss>