Win_C++
文章平均质量分 57
JoeBlackzqq
爱好网络软件的开发,更喜欢结交志同道合的朋友!
展开
-
注意vector, list, set, map成员函数erase
From: http://blog.csdn.net/tujiaw/article/details/7770498[cpp] view plaincopy#include #include #include #include using namespace std; void Remove1(vectorint> &vec, i转载 2013-07-03 15:37:05 · 1301 阅读 · 0 评论 -
带格式化参数的strcat宏定义
#include #include #include using namespace std;// 带格式化参数的strcat宏定义#define Strcat(x, fmt, ...) sprintf(x, "%s" #fmt, x, __VA_ARGS__)int main(void){ char buf[200]; for(int k =原创 2014-11-07 14:06:30 · 2270 阅读 · 1 评论 -
Windows获取系统语言
#include #include #include using namespace std;int main(int argc, char *argv[]){ string s; LCID localeID = GetUserDefaultLCID(); unsigned short lang = localeID & 0xFF; switch(l原创 2014-11-14 21:57:23 · 3295 阅读 · 0 评论 -
动态链接库和静态链接库
From: http://blog.163.com/zhangjie_0303/blog/static/99082706201081105654484/ 动态链接库dll,静态链接库lib, 导入库lib目前以lib后缀的库有两种,一种为静态链接库(Static Libary,以下简称“静态库”),另一种为动态连接库(DLL,以下简称“动态库”)的导入库(Import Libary转载 2014-10-16 21:51:48 · 1247 阅读 · 0 评论 -
vector, list, map在遍历时删除符合条件的元素
直接看源码,内有详细解释原创 2014-10-30 17:16:49 · 2865 阅读 · 0 评论 -
关于24点游戏的编程思路与基本算法
From: http://blog.csdn.net/wangqiulin123456/article/details/8145545 24点游戏的算法,其中最主要的思想就是穷举法。所谓穷举法就是列出4个数字加减乘除的各种可能性,包括括号的算法。我们可以将表达式分成以下几种:首先我们将4个数设为a,b,c,d,,其中算术符号有+,-,*,/,。其中有效的表达式有a,ab-cd,转载 2014-11-26 11:56:01 · 1396 阅读 · 0 评论 -
TCP选项:TCP_NODELAY和TCP_CORK
From: http://blog.163.com/zhangjie_0303/blog/static/990827062012718316231/ Nagle算法 TCP_NODELAY和TCP_CORKNagle算法根据创建者John Nagle命名。该算法用于对缓冲区内的一定数量的消息进行自动连接。该处理过程(称为Nagling),通过减少必须发送的封包的数量,提高了转载 2014-11-21 20:17:08 · 708 阅读 · 0 评论 -
Epoll在LT和ET模式下的读写方式
From: http://www.ccvita.com/515.html转载 2014-11-24 13:42:31 · 647 阅读 · 0 评论 -
[Windows]7种网络编程I/O模型代码实现实例
From: http://blog.csdn.net/woshinia/article/details/8585930 部分代码参考《[WINDOWS网络与通信程序设计].王艳平》,网络中一些I/O模型的代码都没有对socket是否可写做过深入研究,我这边会提供一些解决方法。阻塞模式下,send会发生阻塞(非阻塞模式下send返回WSAEWOULDBLOCK错误,重叠I/O下表现为转载 2014-12-04 08:42:45 · 3614 阅读 · 0 评论 -
typeid详解
From: http://www.cppblog.com/smagle/archive/2010/05/14/115286.aspx 在揭开typeid神秘面纱之前,我们先来了解一下RTTI(Run-Time Type Identification,运行时类型识别),它使程序能够获取由基指针或引用所指向的对象的实际派生类型,即允许“用指向基类的指针或引用来操作对象”的程序能够获取转载 2015-01-29 21:23:36 · 782 阅读 · 0 评论 -
struct作为map的key时,需要重载该结构体
当结构体作为map中的key时,这个结构体必须重载"<"运算符,原创 2014-09-03 14:52:50 · 5408 阅读 · 0 评论 -
cocos2dx 3.0 windows平台 中文乱码解决
From: http://www.cnblogs.com/yujiaao/p/3691938.html转载 2014-09-10 09:49:55 · 1085 阅读 · 0 评论 -
vc2010+openCV1.0实现将指定目录下的所有jpg文件缩放后存放到目标文件夹
开发环境:winXP + vc2010 + OpenCV1.0OpenCV1.0安装目录: D:\opensource\opencv1.0源代码:/* 功能:将指定目录下的所有JPG文件进行缩放后存放到目标文件夹 开发环境: winXP + vc2010 + openCV1.0 头文件路径: D:\opensource\opencv1.0\cv\include D:\原创 2013-08-27 09:34:12 · 3094 阅读 · 0 评论 -
对象文件格式分析工具: objdump, nm,ar
From: http://blog.csdn.net/longxin007/article/details/1880477前言如果普通编程不需要了解这些东西,如果想精确控制你的对象文件的格式或者你想查看一下文件对象里的内容以便作出某种判断,刚你可以看一下下面的工具:objdump, nm, ar。当然,本文不可能非常详细的说明它们的使用方法和功能。如果你觉得本文不够清楚,你可以使用转载 2013-09-12 14:13:25 · 1287 阅读 · 0 评论 -
i++ 和 ++i 效率的分析以及自定义类型的自增/自减运算符重载实例
From: http://blog.csdn.net/leo115/article/details/8101541我们通常在写for循环 的时候,要实现变量 i 的自增 1 ;往往会在i++ 和++i中随便挑一种写,对于i++和++i的理解,我们往往停留在返回的值的不同,其实i++与++i在实现效率上也有一定的不同(不考虑编译器优化的原因)。++i的实现效率更高解释如下:i转载 2013-10-23 09:55:19 · 1100 阅读 · 0 评论 -
C++ stringstream介绍,使用方法与例子
From: http://www.usidcbbs.com/read-htm-tid-1898.htmlC++引入了ostringstream、istringstream、stringstream这三个类,要使用他们创建对象就必须包含sstream.h头文件。 istringstream类用于执行C++风格的串流的输入操作。 ostringstream类用于执行C风格的串转载 2011-12-01 22:57:17 · 142507 阅读 · 6 评论 -
ANSIC标准定义的6种预定义宏
From: http://biancheng.dnbcw.info/c/277439.htmlANSIC标准定义了以下6种可供C语言使用的预定义宏: __LINE__ 在源代码中插入当前源代码行号 __FILE__ 在源代码中插入当前源代码文件名转载 2014-04-24 17:32:56 · 1874 阅读 · 0 评论 -
一个跨平台的 C++ 内存泄漏检测器
From:http://www.ibm.com/developerworks/cn/linux/l-mleak2/index.html转载 2014-08-21 12:27:42 · 890 阅读 · 0 评论 -
C++ STL 遍历 map 的时候如何删除其中的 element
首先看一段他人的一段文章:from: http://www.cnblogs.com/super119/archive/2011/10/11/2207541.html我们通过map的erase(iterator it)方法删除元素的时候,如果此时erase处于遍历map的代码中,那么调用erase就需要小心一些。因为erase会导致输入参数iterator变的无效,从而影响后续的it++遍历原创 2011-10-24 11:20:49 · 1926 阅读 · 0 评论 -
STL学习之map容器
From: http://blog.csdn.net/richerg85/article/details/7686481 map::insert[cpp] view plaincopyprint?pairbool> insert(const value_type& x); iterator insert(ite转载 2014-08-21 17:32:12 · 845 阅读 · 0 评论 -
std::map的insert和下标[]访问
From: http://www.cnblogs.com/kex1n/archive/2011/11/16/2251520.html 在map中插入元素改变map中的条目非常简单,因为map类已经对[]操作符进行了重载enumMap[1] = "One";enumMap[2] = "Two";.....这样非常直观,但存在一个性能的问题。插入2时,先在enumMap转载 2014-08-21 17:33:25 · 1567 阅读 · 0 评论 -
最常用的两种C++序列化方案的使用心得(protobuf和boost serialization)
From: http://www.cnblogs.com/lanxuezaipiao/p/3703988.html 导读1. 什么是序列化?2. 为什么要序列化?好处在哪里?3. C++对象序列化的四种方法4. 最常用的两种序列化方案使用心得正文1. 什么是序列化?程序员在编写应用程序的时候往往需要将程序的某些转载 2014-12-26 10:22:59 · 1246 阅读 · 0 评论 -
[C++11 std::thread] 使用C++11 编写 Linux 多线程程序
From: http://www.ibm.com/developerworks/cn/linux/1412_zhupx_thread/index.html 本文讲述了如何使用 C++11 编写 Linux 下的多线程程序,如何使用锁,以及相关的注意事项,还简述了 C++11 引入的一些高级概念如 promise/future 等。0 评论:朱转载 2014-12-26 09:26:20 · 17148 阅读 · 1 评论 -
C++11 std::bind std::function 高级用法
From: http://blog.csdn.net/eclipser1987/article/details/24406203从最基础的了解,std::bind和std::function[cpp] view plain copy /* * File: main.cpp * Author: Vicky.H * Email: eclip转载 2017-07-19 14:53:54 · 833 阅读 · 0 评论 -
struct结构体初始化3种方法
From: http://blog.csdn.net/xiongping_/article/details/43567663c语言 struct 的初始化struct数据有3中初始化方法:顺序,C风格及C++风格的乱序。1)顺序 这种方法很常见,在一般的介绍C的书中都有介绍。顺序初始化的特点是: 按照成员定义的顺序,从前到后逐个初始化;允许只初始化部分成员;在被初始化的转载 2017-08-23 15:49:48 · 4852 阅读 · 0 评论 -
std::string删除首字符
查了下std::string的使用手册,才知道string删除字符只有erase成员方法,但是这个方法提供了3个重载方式,如下: string& erase ( size_t pos = 0, size_t n = npos );iterator erase ( iterator position );iterator erase ( iterator first, iterator la原创 2017-09-21 17:22:02 · 10929 阅读 · 0 评论 -
[算法] 求排列组合: 从n个数中任选m个数组成一个新数
#include #include using namespace std;// 求排列组合算法: C(n, m): 从n个数中任选m个数组成一个新的数, 求有多少种组合, 分别是什么 // 从v[]里任选m个元素组成一个组合, 与顺序无关templatevector> fun(vector v, int m){ if(v.size() < m) return {};原创 2017-11-08 12:59:35 · 3586 阅读 · 0 评论 -
[算法] 麻将序数牌组合方案
// 环境: centos7.2, g++ v4.8.5#include #include #include #include #include #include using namespace std;enum CombineType{ CombineType_Null = 0, // 单牌 CombineType_Dui = 1, // 对子 CombineTyp原创 2017-11-04 11:59:19 · 1667 阅读 · 0 评论 -
[算法] vector删除元素
#include #include using namespace std;bool IsOdd (int i) { return i % 2 == 1; } // 奇数void test_remove(vector& v){ auto del = remove(v.begin(), v.end(), 9); // 删除所有的9 v.erase(del, v.end());原创 2017-11-04 13:39:32 · 602 阅读 · 0 评论 -
[libuv] libuv学习
From: https://www.mobibrw.com/2016/3490libuv 是重写了下libev,封装了windows和unix的差异性。libuv的特点非阻塞TCP套接字 socket?非阻塞命名管道UDP定时器子进程 fork?通过 uv_getaddrinfo实现异步DNS异步文件系统API uv_fs_*高分辨率时间 uv_hrtime正在运行程序路径...转载 2018-12-14 10:03:23 · 744 阅读 · 0 评论 -
Linux查看物理CPU个数、核数、逻辑CPU个数
From: http://www.cnblogs.com/emanlee/p/3587571.html# 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数# 查看物理CPU个数cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l# 查看每...转载 2018-12-26 09:21:05 · 304 阅读 · 0 评论 -
[json] JSON for Modern C++
有幸能接触到这个,这是我遇到的使用最方便的json了,效率没研究过!简单了使用了下,感觉非常好用,记录下:要使用这个json,只需要使用json.hpp就行,放入自己的工程里,但是我这里是安装过的,为了其他项目也能使用! 环境: Mac OS X 10.12.6, Xcode(Version 8.3.3 (8E3004b))安装:brew tap nlohmann/jso...原创 2019-02-19 11:49:20 · 1723 阅读 · 0 评论 -
八皇后算法
From: http://blog.csdn.net/feixiaoxing/article/details/6877965【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 八皇后是一道很具典型性的题目。它的基本要求是这样的:在一个8*8的矩阵上面放置8个物体,一个矩阵点只允许放置一个物体,任意两个点不能在一行上,也转载 2016-09-27 16:50:22 · 712 阅读 · 0 评论 -
深入理解C++中的mutable关键字
From: http://dev.yesky.com/393/3007393.shtml mutalbe的中文意思是“可变的,易变的”,跟constant(既C++中的const)是反义词。 在C++中,mutable也是为了突破const的限制而设置的。被mutable修饰的变量,将永远处于可变的状态,即使在一个const函数中。 我们知道,如果类的成员函数不会改转载 2015-03-20 23:15:56 · 602 阅读 · 0 评论 -
添加std::string的format函数
From: http://blog.csdn.net/tingsking18/article/details/6699274 [cpp] view plaincopyprint?//============================================================================ // Name转载 2014-12-30 15:02:39 · 1137 阅读 · 0 评论 -
给std::string增加format函数
From: http://www.0xcode.cn/jishu/biancheng/5.html #ifndef lstring #ifdef _UNICODE #define lstring std::wstring #define lchar wchar_t #else #define lstring std::string #define lch转载 2014-12-30 15:12:07 · 2386 阅读 · 0 评论 -
浅尝boost之format
From: http://www.cnblogs.com/WuErPIng/archive/2005/04/21/142308.html 概述 std::string是个很不错的东东,但实际使用时基本在每个程序里都会遇到不愉快的事情:格式化字符串。我甚至由于这个原因在代码里引入平台有关的MFC,ATL等本来不需要在项目中使用的一些重量级的框架,就为了能轻松的做格式化字转载 2014-12-30 15:15:09 · 930 阅读 · 0 评论 -
c++中BOOL和bool的区别
From: http://blog.csdn.net/zhongguoren666/article/details/8472805 一:在网上找到了BOOL和bool的区别:1、类型不同BOOL为int型bool为布尔型2、长度不同bool只有一个字节BOOL长度视实际环境来定,一般可认为是4个字节3、取值不同bo转载 2015-02-07 21:02:55 · 798 阅读 · 0 评论 -
mysql Connector C/C++ 多线程封装
From: http://blog.csdn.net/educast/article/details/14163519 在网上找了好久,有很多封装,但是感觉对多线程处理的不多,都不是很理想。封装完的第一个版本,想法比较简单,使用一个单例模式,对应一个连接,多线程查询的时候都是在这个链接上完成,如下简略代码class DbClass{public: o转载 2015-02-07 21:26:22 · 1674 阅读 · 0 评论 -
基于MysqlConnector/C++的数据库连接池的实现
From: http://blog.csdn.net/educast/article/details/14164097 1.连接池的介绍:1.1应用背景:一般的应用程序都会访问到数据库,在程序访问数据库的时候,每一次数据访问请求都必须经过下面几个步骤:建立数据库连接,打开数据库,对数据库中的数据进行操作,关闭数据库连接。而建立数据库连接和打开数据库是一件很消耗资源并转载 2015-02-07 21:27:34 · 947 阅读 · 0 评论