<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[rickypc的专栏]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/rickypc</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; rickypc]]></copyright><item><title><![CDATA[std::sort 宕机]]></title><link>https://blog.csdn.net/rickypc/article/details/120439075</link><guid>https://blog.csdn.net/rickypc/article/details/120439075</guid><author>rickypc</author><pubDate>Thu, 23 Sep 2021 17:36:03 +0800</pubDate><description><![CDATA[一次公司项目代码引发了宕机，源于std::sort。相似代码贴在下面。由于std::sort 第三个参数写的不对造成的。

源码：


using Vec = std::vector&lt;std::pair&lt;int, int&gt;&gt;;
void print_elem(const Vec&amp; vec, const std::string&amp; str)
{
    std::stringstream oss;
    for (const auto&amp; item : vec)
]]></description><category></category></item><item><title><![CDATA[关于 std::sort 不稳定的研究]]></title><link>https://blog.csdn.net/rickypc/article/details/109002107</link><guid>https://blog.csdn.net/rickypc/article/details/109002107</guid><author>rickypc</author><pubDate>Sat, 10 Oct 2020 18:18:35 +0800</pubDate><description><![CDATA[概述

std::sort 是不稳定的排序。在使用的时候，需要严格遵守排序准则，否则会导致异常产生。


问题描述


外网玩家发来bug：某天晚上，一个排行榜发生第一名A和第二名B，在数据为发生变化的情况下，会不停的交替更换。


经查，该排行榜的排序规则functor 是
bool compare_function(const std::shared_ptr&lt;Data&gt; lhs, const std::shared_ptr&lt;Data&gt; rhs)
{
    if (lhs-&gt]]></description><category></category></item><item><title><![CDATA[Linux Bash Shell入门教程]]></title><link>https://blog.csdn.net/rickypc/article/details/8991855</link><guid>https://blog.csdn.net/rickypc/article/details/8991855</guid><author>rickypc</author><pubDate>Wed, 29 May 2013 23:48:50 +0800</pubDate><description><![CDATA[BASH 的基本语法


最简单的例子 —— Hello World! 

关于输入、输出和错误输出 

BASH 中对变量的规定（与 C 语言的异同） 

BASH 中的基本流程控制语法 

函数的使用 

2.1     最简单的例子 —— Hello World!
几乎所有的讲解编程的书给读者的第一个例子都是 Hello World 程序，那么我们今天也就从这个例]]></description><category></category></item><item><title><![CDATA[在vs2010中编译log4cxx-0.10.0详细方法]]></title><link>https://blog.csdn.net/rickypc/article/details/8635811</link><guid>https://blog.csdn.net/rickypc/article/details/8635811</guid><author>rickypc</author><pubDate>Mon, 04 Mar 2013 22:33:19 +0800</pubDate><description><![CDATA[http://blog.sina.com.cn/s/blog_a459dcf501013tbn.html]]></description><category></category></item><item><title><![CDATA[C++日志系统log4cxx使用总结]]></title><link>https://blog.csdn.net/rickypc/article/details/8635807</link><guid>https://blog.csdn.net/rickypc/article/details/8635807</guid><author>rickypc</author><pubDate>Mon, 04 Mar 2013 22:32:33 +0800</pubDate><description><![CDATA[http://blog.sina.com.cn/s/blog_a459dcf501013mr1.html]]></description><category></category></item><item><title><![CDATA[viminfo文件了解]]></title><link>https://blog.csdn.net/rickypc/article/details/8471289</link><guid>https://blog.csdn.net/rickypc/article/details/8471289</guid><author>rickypc</author><pubDate>Sun, 06 Jan 2013 00:42:16 +0800</pubDate><description><![CDATA[在编辑文件之后退出时,vi(vim)提示”Can’t write viminfo file”错误,了解一下viminfo文件：

    第一，viminfo 文件是什么东西？

    信息文件 viminfo 被设计为储存状态信息:

    命令行和模式搜索的历史记录

    寄存器内文本

    各种文件的标记

    缓存器列表

    全局变量]]></description><category></category></item><item><title><![CDATA[鸟哥的linux私房菜]]></title><link>https://blog.csdn.net/rickypc/article/details/8273135</link><guid>https://blog.csdn.net/rickypc/article/details/8273135</guid><author>rickypc</author><pubDate>Sat, 08 Dec 2012 18:07:06 +0800</pubDate><description><![CDATA[http://vbird.dic.ksu.edu.tw/]]></description><category></category></item><item><title><![CDATA[[精华] 跟我一起写 Makefile]]></title><link>https://blog.csdn.net/rickypc/article/details/8273125</link><guid>https://blog.csdn.net/rickypc/article/details/8273125</guid><author>rickypc</author><pubDate>Sat, 08 Dec 2012 18:06:23 +0800</pubDate><description><![CDATA[陈皓 

概述 
—— 

什么是makefile？或许很多Winodws的程序员都不知道这个东西，因为那些Windows的IDE都为你做了这个工作，但我觉得要作一个好的和professional的程序员，makefile还是要懂。这就好像现在有这么多的HTML的编辑器，但如果你想成为一个专业人士，你还是要了解HTML的标识的含义。特别在Unix下的软件编译，你就不能不自己写makefi]]></description><category></category></item><item><title><![CDATA[Unable to locate package build-essential]]></title><link>https://blog.csdn.net/rickypc/article/details/8247298</link><guid>https://blog.csdn.net/rickypc/article/details/8247298</guid><author>rickypc</author><pubDate>Sat, 01 Dec 2012 21:22:25 +0800</pubDate><description><![CDATA[在安装 g++ 等工具时 会提示 Unable to locate package build-essential，这种情况下先执行 sudo apt-get update 更新一下， 更新完。继续 sudo apt-get install build-essential


在文件无法保存的时候， 可以使用命令 sudo vim ./etc/apt/sources.list  可以实现保存]]></description><category></category></item><item><title><![CDATA[Linux编程工具集锦]]></title><link>https://blog.csdn.net/rickypc/article/details/7749102</link><guid>https://blog.csdn.net/rickypc/article/details/7749102</guid><author>rickypc</author><pubDate>Sun, 15 Jul 2012 18:11:16 +0800</pubDate><description><![CDATA[http://wenku.baidu.com/album/view/d65c5d323968011ca3009168?pn=0#albumDocs]]></description><category></category></item><item><title><![CDATA[Linux操作系统专题]]></title><link>https://blog.csdn.net/rickypc/article/details/7749053</link><guid>https://blog.csdn.net/rickypc/article/details/7749053</guid><author>rickypc</author><pubDate>Sun, 15 Jul 2012 17:35:21 +0800</pubDate><description><![CDATA[http://wenku.baidu.com/album/view/4a5db78271fe910ef12df833]]></description><category></category></item><item><title><![CDATA[ASIO学习]]></title><link>https://blog.csdn.net/rickypc/article/details/7597385</link><guid>https://blog.csdn.net/rickypc/article/details/7597385</guid><author>rickypc</author><pubDate>Thu, 24 May 2012 10:30:31 +0800</pubDate><description><![CDATA[boost::asio::Io_service

构造函数
构造函数的主要动作就是调用CreateIoCompletionPort创建了一个初始iocp。
Dispatch和post的区别
Post一定是PostQueuedCompletionStatus并且在GetQueuedCompletionStatus 之后执行。
Dispatch会首先检查当前thread是不是io_serv]]></description><category></category></item><item><title><![CDATA[Linux内核的时钟中断机制]]></title><link>https://blog.csdn.net/rickypc/article/details/7454168</link><guid>https://blog.csdn.net/rickypc/article/details/7454168</guid><author>rickypc</author><pubDate>Thu, 12 Apr 2012 15:48:23 +0800</pubDate><description><![CDATA[http://www.linuxforum.net/forum/showthreaded.php?Cat=&Board=driver&Number=385219&page=0&view=collapsed&sb=5&o=all]]></description><category></category></item><item><title><![CDATA[西安信息资源网]]></title><link>https://blog.csdn.net/rickypc/article/details/7310656</link><guid>https://blog.csdn.net/rickypc/article/details/7310656</guid><author>rickypc</author><pubDate>Thu, 01 Mar 2012 20:33:16 +0800</pubDate><description><![CDATA[http://www.infoxa.com]]></description><category></category></item><item><title><![CDATA[Mysql数据库相关资料索引（2010年7月及以前资料）]]></title><link>https://blog.csdn.net/rickypc/article/details/6716176</link><guid>https://blog.csdn.net/rickypc/article/details/6716176</guid><author>rickypc</author><pubDate>Wed, 24 Aug 2011 20:00:54 +0800</pubDate><description><![CDATA[mysql 相关资料链接
一、基础知识
1.mysql入门
mysql简介
mysql 5入门实践
mysql初学者使用指南
常用mysql命令集锦
Mysql的技术特点
Mysql 日志文件简述
mysql存储引擎简述
Mysql慢查询日志
mysql学习]]></description><category></category></item><item><title><![CDATA[MySQL索引背后的数据结构及算法原理]]></title><link>https://blog.csdn.net/rickypc/article/details/6706728</link><guid>https://blog.csdn.net/rickypc/article/details/6706728</guid><author>rickypc</author><pubDate>Sun, 21 Aug 2011 20:28:07 +0800</pubDate><description><![CDATA[在编程领域有一句人尽皆知的法则“程序 = 数据结构 + 算法”，我个人是不太赞同这句话（因为我觉得程序不仅仅是数据结构加算法），但是在日常的学习和工作中我确认深深感受到数据结构和算法的重要性，很多东西，如果你愿意稍稍往深处挖一点，那么扑面而来的一定是各种数据结构和算法知识。例如几]]></description><category></category></item><item><title><![CDATA[一个很好的学习Boost库的网站]]></title><link>https://blog.csdn.net/rickypc/article/details/6314393</link><guid>https://blog.csdn.net/rickypc/article/details/6314393</guid><author>rickypc</author><pubDate>Sun, 10 Apr 2011 23:59:00 +0800</pubDate><description><![CDATA[<br />http://zh.highscore.de/cpp/boost/]]></description><category></category></item><item><title><![CDATA[Boost 库中的实用工具类使用入门]]></title><link>https://blog.csdn.net/rickypc/article/details/6273500</link><guid>https://blog.csdn.net/rickypc/article/details/6273500</guid><author>rickypc</author><pubDate>Thu, 24 Mar 2011 11:05:00 +0800</pubDate><description><![CDATA[<br />       简介： 实用工具类开发和维护会耗费程序员的时间。Boost 通过提供几个高质量的库，从而简化了此过程，您可以将这些库轻松集成到现有的代码库中。本文简单概述一些较流行的 Boost 实用工具类，并帮助您了解如何将它们投入使用。<br /> <br />实用工具类（utility classes）在几乎任何适当规模的 C++ 项目中都是必需的，但是不存在满足此需求的标准方法。通常，团队根据他们的需求编写实用工具类代码，但是由于缺少重要的接口信息，使得相同组织中的其他项目团队无法重用那些]]></description><category></category></item><item><title><![CDATA[c++boost组件简介：数据结构,容器,迭代器和算法]]></title><link>https://blog.csdn.net/rickypc/article/details/6246469</link><guid>https://blog.csdn.net/rickypc/article/details/6246469</guid><author>rickypc</author><pubDate>Sun, 13 Mar 2011 16:06:00 +0800</pubDate><description><![CDATA[<br />简介：这是c++boost组件简介：数据结构,容器,迭代器和算法的详细页面，介绍了和c/c++,,c++,boost,组件简介：数据结构,,容器,,迭代器和算法,,,,有关的知识、技巧、经验，和一些c/c++源码等<br /> <br /> 数据结构, 容器, 迭代器, 和算法boost.any<br />any库支持类型安全地存储和获取任意类型的值。当你需要一个可变的类型时，有三种可能的解决方案：<br />无限制的类型，如 void*. 这种方法不可能是类型安全的，应该象逃避灾难一样避免它。]]></description><category></category></item><item><title><![CDATA[Visual.Assist.X.V10.6.1825正式发行版 以及的破解补丁[推荐]]]></title><link>https://blog.csdn.net/rickypc/article/details/6156374</link><guid>https://blog.csdn.net/rickypc/article/details/6156374</guid><author>rickypc</author><pubDate>Fri, 21 Jan 2011 10:14:00 +0800</pubDate><description><![CDATA[<br />VA更新速度真快,又针对VS2010更新很多了,<br />现提供破解补丁和VA软件安装文件一起打包,<br />VA安装文件从官方下载可放心使用,如果你不放心可以自己去官方下载最新版,<br />官方地址<br />破解补丁来自吾爱破解<br />下载地址<br />此次VA安装包可以不分VS版本,一次安装共所有版本使用.<br />下载安装完毕之后，直接运行补丁,点击patch即可，输入你要注册的用户名,<br />补丁会自动覆盖安装文件下的VA_X.dll文件,此方法安装后vs6到vs20]]></description><category></category></item></channel></rss>