<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[thinkme2010的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/thinkme2010</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; thinkme2010]]></copyright><item><title><![CDATA[bash 判断进程是否运行]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/49303449</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/49303449</guid><author>thinkme2010</author><pubDate>Wed, 21 Oct 2015 13:52:30 +0800</pubDate><description><![CDATA[#!/bin/sh
SERVICE='httpd'
 
if ps ax | grep -v grep | grep $SERVICE > /dev/null
then
    echo "$SERVICE service running, everything is fine"
else
    echo "$SERVICE is not running"
    echo "$SERVICE ]]></description><category></category></item><item><title><![CDATA[关于distcc安装和使用]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/49156069</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/49156069</guid><author>thinkme2010</author><pubDate>Thu, 15 Oct 2015 18:19:10 +0800</pubDate><description><![CDATA[distcc: a fast, free distributed C/C++ compiler

NEWS: distcc 3.1 released!

Distcc release 3.1 is now available at Downloads. See NEWS for
 details.

Overview

distcc is a program to distrib]]></description><category></category></item><item><title><![CDATA[关于include<vector>编译错误问题]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/49123953</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/49123953</guid><author>thinkme2010</author><pubDate>Wed, 14 Oct 2015 13:26:52 +0800</pubDate><description><![CDATA[One of your header files is almost certainly including:
#include 


Before that line, add:
#undef max


And I believe your compiles will start working. This is happening b/c you are also using t]]></description><category></category></item><item><title><![CDATA[关于*和++优先级以及使用]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/48787561</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/48787561</guid><author>thinkme2010</author><pubDate>Mon, 28 Sep 2015 17:49:43 +0800</pubDate><description><![CDATA[关键在于熟练掌握操作符的优先级和++的使用方法
*p=*p+1;此处*为间接访问，P指向的地址内容+1后的值赋给P指向的地址
 *p++;//这里*和++为同一优先级，P先和++结合；右移P++是先使用P的值，后P的值+1
        //*p++和*p=*p+1的区别是后者是P指向的地址的值+1，前者是P的地址+1，所有后者、即单独的*p++；等价于P++，是一种容易误解的写法，在实际程序中]]></description><category></category></item><item><title><![CDATA[可变参数]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/48708627</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/48708627</guid><author>thinkme2010</author><pubDate>Thu, 24 Sep 2015 11:19:16 +0800</pubDate><description><![CDATA[C函数调用的栈结构

 可变参数函数的实现与函数调用的栈结构密切相关，正常情况下C的函数参数入栈规则为__stdcall, 它是从右到左的，即函数中的最右边的参数最先入栈。例如，对于函数：

  void fun(int a, int b, int c)
  {
        int d;
        ...
  }


其栈结构为

    0x1ffc-->d

 ]]></description><category></category></item><item><title><![CDATA[关于栈上的单体结构]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/48707897</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/48707897</guid><author>thinkme2010</author><pubDate>Thu, 24 Sep 2015 11:00:01 +0800</pubDate><description><![CDATA[class createFun
{
public :
virtual int * create(){return new int;}

};
我定义了这样一个对象，如果希望这个对象实现一个单体模式，那么常用的就是在堆上构建，如：在内部这么写
class createFun
{
public :
static createFun* _instance(){
static  cr]]></description><category></category></item><item><title><![CDATA[逻辑卷扩容]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/48494435</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/48494435</guid><author>thinkme2010</author><pubDate>Wed, 16 Sep 2015 15:10:43 +0800</pubDate><description><![CDATA[安装LVM

默认情况下Redhat Linux系统中是默认安装了lvm工具的


[root@a ~]# rpm -qa |grep lvm
lvm2-2.02.56-8.el5
system-config-lvm-1.1.5-4.el5
[root@a ~]#


通过查询可以知道LVM需要lvm2-2.02.56-8.el5及system-config-lvm-1.1.]]></description><category></category></item><item><title><![CDATA[ubuntu mysql 安装和外网访问配置]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/48347429</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/48347429</guid><author>thinkme2010</author><pubDate>Thu, 10 Sep 2015 18:33:31 +0800</pubDate><description><![CDATA[1.输入 sudo apt-get install mysql-server  
   安装过程中会让你输入密码，这个密码是root的密码。
   安装完毕后，就可以正常使用了，如果你需要外网用户能够连接继续下面的步骤。
2.在终端输入mysql -u root -p 回车
　输入您的密码 回车
　进入mysql>
   输入use mysql;回车
　如果所有主机能够访问
　输入]]></description><category></category></item><item><title><![CDATA[HTTP Error 12057 - SSL Revocation(解决geen的问题)]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/48312921</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/48312921</guid><author>thinkme2010</author><pubDate>Wed, 09 Sep 2015 11:02:09 +0800</pubDate><description><![CDATA[This error is happening because the program GenoPro uses a secure encrypted protocol (SSL) to connect to the server GenoPro.com.  Under rare conditions, your computer may display the error below becau]]></description><category></category></item><item><title><![CDATA[Ubuntu terminator 多窗口终端的快捷键]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/48264679</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/48264679</guid><author>thinkme2010</author><pubDate>Mon, 07 Sep 2015 13:52:55 +0800</pubDate><description><![CDATA[KEYBINDINGS 
The following keybindings can be used to control Terminator: 

Ctrl+Shift+O 
Split terminals Horizontally.（上下开新窗口） 

Ctrl+Shift+E 
Split terminals Vertically.（垂直开新窗口） 

Ctrl+Shif]]></description><category></category></item><item><title><![CDATA[linux 安装gtest 单元测试]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/48159821</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/48159821</guid><author>thinkme2010</author><pubDate>Tue, 01 Sep 2015 16:36:13 +0800</pubDate><description><![CDATA[Before you start make sure your have read and understood this
 note from Google! This tutorial makes using gtest easy, but may introduce nasty
 bugs.

1. Get the googletest framework
$ wget https]]></description><category></category></item><item><title><![CDATA[安装google的gtest库]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/47978175</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/47978175</guid><author>thinkme2010</author><pubDate>Tue, 25 Aug 2015 15:45:45 +0800</pubDate><description><![CDATA[gtest测试框架是google开源的用于在不同平台上（Linux，Mac OS X，Windows，Cygwin，Windows CE和Symbian）为编写C++测试用例的项目。它是基于xUnit架构的测试框架，支持自动发现测试，丰富的断言集， 用户定义的断言，death测试，致命与非致命的失败，类型参数化测试，各类运行测试的选项和XML的测试报告。

    gtest项目官方网址：ht]]></description><category></category></item><item><title><![CDATA[boost处理string]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/47754005</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/47754005</guid><author>thinkme2010</author><pubDate>Tue, 18 Aug 2015 16:35:14 +0800</pubDate><description><![CDATA[boost::algorithm提供了很多字符串算法，包括： 大小写转换； 去除无效字符； 谓词； 查找； 删除/替换； 切割； 连接； 我们用写例子的方式来了解boost::algorithm能够为我们做些什么。

boost::algorithm学习
#include 
using namespace std;
using namespace boost; 
一：大小写转换
1 ]]></description><category></category></item><item><title><![CDATA[std::map的insert和下标[]访问]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/47749469</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/47749469</guid><author>thinkme2010</author><pubDate>Tue, 18 Aug 2015 11:29:19 +0800</pubDate><description><![CDATA[在map中插入元素

改变map中的条目非常简单，因为map类已经对[]操作符进行了重载

enumMap[1] = "One";
enumMap[2] = "Two";
.....

这样非常直观，但存在一个性能的问题。插入2时,先在enumMap中查找主键为2的项，没发现，然后将一个新的对象插入enumMap，键是2，值是一个空字符串，插入完成后，将字符串赋为"Two"; 该方]]></description><category></category></item><item><title><![CDATA[eclipse屏蔽恶心的系统alt键]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/47727229</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/47727229</guid><author>thinkme2010</author><pubDate>Mon, 17 Aug 2015 16:43:29 +0800</pubDate><description><![CDATA[公司在ubuntu下开发使用eclipse，设置很多快捷键和alt相关，发现每次点快的时候总会切换到系统的左边工具栏上，很恶心，于是想去掉alt，在system settings->keyboard->shortcut里有个key to show hud， 将它禁用就好了。不能禁用的话就修改为其他永远永不到的快捷键。]]></description><category></category></item><item><title><![CDATA[Eclipse看GBK文件]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/47415621</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/47415621</guid><author>thinkme2010</author><pubDate>Tue, 11 Aug 2015 09:57:00 +0800</pubDate><description><![CDATA[首先Windows->Preferences, 然后选择General下面的Workspace. Text file encoding选择Other GBK， 如果没有GBK的选项， 没关系， 直接输入GBK三个字母， Apply， GBK编码的中文， 已经不是乱码了Ec]]></description><category></category></item><item><title><![CDATA[Eclipse 10个常用快捷键]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/47402121</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/47402121</guid><author>thinkme2010</author><pubDate>Mon, 10 Aug 2015 17:44:15 +0800</pubDate><description><![CDATA[一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合。通过这些组合可以更加容易的浏览源代码，使得整体的开发效率和质量得到提升。


    1. ctrl+shift+r：打开资源

    这可能是所有快捷键组合中最省时间的了。这组快捷键可以让你打开你的工作区中任何一个文件，而你只需要按下文件名或mask名中的前几个字母，比如applic*.xml。美中不足的是]]></description><category></category></item><item><title><![CDATA[安装virtualbox虚拟机]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/47170539</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/47170539</guid><author>thinkme2010</author><pubDate>Fri, 31 Jul 2015 15:18:26 +0800</pubDate><description><![CDATA[公司使用virtualbox做测试工作，昨天折腾eclipse和gcc降低版本的事情，早上发现virtualbox不能用了，折腾了半天才搞定，只说解决方案，网上下了一个virtualbox5.0，貌似ubuntu14里最高版本是4.3.30，装的时候会报错，原因是你要把所有信息卸载干净
sudo apt-get autoremove --purge virtualbox-dkms virtual]]></description><category></category></item><item><title><![CDATA[判断语句的嵌套处理优化]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/47148127</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/47148127</guid><author>thinkme2010</author><pubDate>Thu, 30 Jul 2015 12:13:16 +0800</pubDate><description><![CDATA[Introduction

If you've ever written or looked at code with several levels of nested if statements,
 you know how difficult it can be to maintain. In this article, I will present code that eliminat]]></description><category></category></item><item><title><![CDATA[关于三级指针]]></title><link>https://blog.youkuaiyun.com/thinkme2010/article/details/47128713</link><guid>https://blog.youkuaiyun.com/thinkme2010/article/details/47128713</guid><author>thinkme2010</author><pubDate>Wed, 29 Jul 2015 15:36:13 +0800</pubDate><description><![CDATA[#include
char   *c[ ] = { "ENTER" , "NEW" , "POINT" , "FIRST"};
char   **cp[ ] = { c+3 , c+2 , c+1 , c };
char   ***cpp = cp;
main ( )
{
    printf ( "%s#" ,  **++cpp );
    printf ( "%s#" ,  *]]></description><category></category></item></channel></rss>