随笔分类 - C++ STL
摘要:vector list底层结构 动态顺序表,一段连续的空间 带头节点的双向链表随机访问 支持随机访问,访问某个元素效率O(1) 不支持随机访问,访问某个元素效率O(N)插入和删除 任意位置插入和删除效率低,需要搬移元素,时间复杂度为O(N),插入是有可能会造成扩容,增容,开辟空间,拷贝元素,释放旧空
阅读全文
摘要:这是C++11新特性介绍的第五部分,涉及到智能指针的相关内容(shared_ptr, unique_ptr, weak_ptr)。 shared_ptr shared_ptr 基本用法 shared_ptr采用引用计数的方式管理所指向的对象。当有一个新的shared_ptr指向同一个对象时(复制sh
阅读全文
摘要:我觉得 Qt6 最应该升级的是容器类stdmap 在遍历的时候,同时获取 key 与 value 非常方便:for(auto& var:map){ qDebug()<<var.first<<var.second;}但是 QMap 就做不到这么便利了。for(auto i=qmap.begin();i
阅读全文
摘要:首先下载得到boost的最新版(目前最新版是1.63) 下载地址: http://www.boost.org 也可以从这里直接下载 http://download.csdn.net/detail/zengraoli/9815337 下载完成后解压出来 编译32位的boost库 打开vs的32位命令行
阅读全文
摘要:平时我们在写代码时候,有思考过要主动去释放vector的内存吗? 1、对于数据量不大的vector,没有必要自己主动释放vector,一切都交给操作系统。 2、但是对于大量数据的vector,在vector里面的数据被删除后,主动去释放vector的内存就变得很有必要了! 读者可以新建一个控制台程序
阅读全文
摘要:剔除list中相同的结构体数据,有三个思路:1、两层循环,逐个比较 2、使用set容器来剔除 3、使用unique方法去重 [cpp] view plain copy // deduplication.cpp : 定义控制台应用程序的入口点。 // #include <list> #include
阅读全文
摘要:[cpp] view plain copy [cpp] view plain copy 注:unique函数功能是去除相邻的重复元素,注意是相邻,所以必须先使用sort函数。还有一个容易忽视的特性是它并不真正把重复的元素删除。之所以说比不真正把重复的元素删除,因为unique实际上并没有删除任何元素
阅读全文
摘要:1、下载: 网址:http://sourceforge.net/projects/boost/files/boost/1.59.0/ 选择:boost_1_59_0.7z或者boost_1_59_0.zip (Windows 8.1企业版操作系统); boost_1_59_0.tar.bz2 ( L
阅读全文
摘要:如何使用 [cpp] view plain copy #include "sperformance.h" #include <iostream> #include <boost/thread.hpp> int main(int argc, char** argv) { kagula::Perform
阅读全文
摘要:Boost::thread库的使用 2009/11/26 Kagula 最后更新日期 2016/12/02 阅读对象 本文假设读者有几下Skills [1]在C++中至少使用过一种多线程开发库,有Mutex和Lock的概念。 [2]熟悉C++开发,在开发工具中,能够编译、设置boost::threa
阅读全文
摘要:[cpp] view plain copy // testBind.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <boost/bind.hpp> #include
阅读全文
摘要:[cpp] view plain copy [cpp] view plain copy http://blog.csdn.net/lee353086/article/details/38421095
阅读全文
摘要:1. 环境: Linux系统:Ubuntu 14.04 编译工具:arm-fsl-linux-gnueabi-gcc 2.下载boost源码: 地址:https://sourceforge.net/projects/boost/files/boost/ 3. 编译: 1)解压,cd 到目录 --sh
阅读全文
摘要:Ubuntu 15.04已经可以直接通过apt-get insall 安装clang 3.6, 并且预装的gcc版本是4.9.2。这些安装过程在这里介绍。 首先下载boost源码 [plain] view plain copy print? wget -O boost.1.59.tar.bz2 ht
阅读全文
摘要:从开始接触Boost已经有好几年了,而对它的掌握却难言熟悉,有对它部分的源代码的剖析也是蜻蜓点水。有时间一点点梳理一下吧。 1. 概述 【Boost】C++ Boost库简介【Boost】C++ Boost 学习资源列表【Boost】Boost使用几条简单笔记【Boost】Poco vs Boost
阅读全文
摘要:摘于boost官网的几个例子, 做了点小修改, 笔记之. 同步客户端 [cpp] view plain copy print? void test_asio_synclient() { typedef boost::asio::io_service IoService; // 该命名空间下有几个常用
阅读全文
摘要:头文件就是库使用者最常问的问题就是“我该怎么安装Boost”,这个也是我一开始最关心的问题,Boost这点做的很好,将大部分实现都封装在头文件里,所以对于一些基本的Boost库,其实是不需要安装的,只需要将头文件include到自己的程序里,当然前提是你把Boost的所有用到的头文件都拷贝了一份。B
阅读全文
摘要:文档书籍下载 Boost Documentation Boost代码下载 优秀网站导航 Boost官方网站 Boost中文站 Boost Consulting 专题资源报告 Linux伊甸园- STL/boost专区 CSDN-Boost系列专题 个人博客推荐 C++有价值blog索引 《Learn
阅读全文
摘要:POCO的优点: 1) 比boost更好的线程库,特别是一个活动的方法的实现,并且还可设置线程的优先级。 2) 比 boost:asio更全面的网络库。但是boost:asio也是一个非常好的网络库。 3) 包含了一些Boost所不包含的功能,像XML,数据库接口等。 4) 跟Boost相比,集成度
阅读全文
摘要:boost是一个准标准库,相当于STL的延续和扩充,它的设计理念和STL比较接近,都是利用泛型让复用达到最大化。不过对比STL,boost更加实用。STL集中在算法部分,而boost包含了不少工具类,可以完成比较具体的工作。 boost主要包含一下几个大类:字符串及文本处理、容器、迭代子(Itera
阅读全文