![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
shanql
这个作者很懒,什么都没留下…
展开
-
使用std::mutext与std::condition_variables实现信号量
使用std::mutext与std::condition_variables实现信号量原创 2023-11-28 23:14:01 · 117 阅读 · 0 评论 -
使用libevent实现回显服务器
使用libevent实现回显服务器原创 2023-11-02 19:23:26 · 458 阅读 · 0 评论 -
使用IO完成端口实现简单回显服务器
使用IO完成端口实现简单回显服务器原创 2023-11-02 12:17:32 · 516 阅读 · 0 评论 -
CONTAINING_RECORD宏
已知类或结构体成员变量的地址,可以取得类或结构体对象的地址原创 2023-11-02 00:49:53 · 110 阅读 · 0 评论 -
std::ifstream与std::ofstream读写文件
std::ifstream读取文件、std::ofstream写文件的示例原创 2023-09-25 17:07:47 · 464 阅读 · 0 评论 -
(转) tellg与tellp
teelg与tellp转载 2023-09-25 14:53:12 · 144 阅读 · 0 评论 -
warning C4003: “max”宏的实参不足
把max前后用小括号括起来,在满足C++语法的同时,骗过了编译器的宏替换。原创 2023-08-29 17:14:51 · 112 阅读 · 0 评论 -
C++多继承、虚函数内存
C++多继承、虚函数内存原创 2023-04-18 11:02:16 · 76 阅读 · 0 评论 -
std::enable_shared_from_this的笔记
shared_from_this原创 2023-04-17 16:50:40 · 83 阅读 · 0 评论 -
std::weak_ptr的笔记
weak_ptr原创 2023-04-17 16:26:11 · 159 阅读 · 0 评论 -
Excel列数字索引转字符索引
Excel列的数字索引转字符索引原创 2022-06-20 15:04:10 · 581 阅读 · 0 评论 -
C运行时库中关于时间处理的函数
说明下文主要列了下时间函数,具体用时,还是要查看文档的详细说明时间函数asctime, _wasctime, asctime_s, _wasctime_s将结构体struct tm的时间转换成字符串的时间,带_s的函数更安全,推荐使用。struct tm通常由 gmtime或localtime获取。函数根据当前系统本地时间区域设置进行格式化输出字符串的时间。clock返回当前进程已运行的cpu时钟滴答数。ctime, _ctime32, _ctime64, _wctime, _wctime32原创 2022-04-25 15:05:35 · 1533 阅读 · 0 评论 -
标准库readsome没有读出任何数据
问题使用readsome读取文件,没有任何数据返回,代码片断如下:std::ifstream infile;infile.open(m_strFileName, std::ios_base::in | std::ios_base::binary);if (!infile.is_open()){ return false;}char szBuffer[512] = { 0 };s...原创 2019-05-22 21:56:08 · 1432 阅读 · 0 评论 -
使用boost库时,无法打开libboost_regex-vc120-mt-1_55.lib
问题使用boost库时,出现无法打开libboost_regex-vc120-mt-1_55.lib的错误原因分析使用everything工具在本机搜索libboost_regex-vc120-mt-1_55.lib,的确是没有这个文件。原来我机器上这份boost库没有生成静态库版本的,是个动态库版本。那如何让工程文件链接动态库版本的boost库呢。解决方案增加宏定义:BOOST_DYN...原创 2019-05-20 15:18:57 · 1279 阅读 · 0 评论 -
Ansi,UTF8,Unicode,ASCII编码的区别
原文出处:http://xiaogai1010.blog.163.com/blog/static/1371703082012281333315/一、简介 1. ASCII和Ansi编码 字符内码(charcter code)指的是用来代表字符的内码.读者在输入和存储文档时都要使用内码,内码分为 (1)单字节内码 -- Single-Byte chara转载 2015-10-14 13:52:05 · 514 阅读 · 0 评论 -
派生类构造函数的执行顺序
派生类构造函数的执行顺序 下面给出一个例子 代码: 1 #include 2 3 using namespace std; 4 5 6 //打印函数名辅助宏 7 #define PRINT_FUNC_NAME()\ 8 cout endl; 9 10 11 //构造及析构函数声明与实现辅助宏12 #d原创 2017-04-05 22:21:25 · 992 阅读 · 0 评论 -
模板,无法解析的外部符号
问题描述写c++类时,习惯将类的声明与实现放在不同的文件中(*.h;*.cpp),所以在写模板类时,我也习惯性的这么做。编译后,提示无法解析的外部符号, 解决方案一将模板类的声明与实现放在同一个*.h文件中 解决方案二保持声明与实现放在不同的文件中,但是需要在*.h文件的最后include实现文件,实现文件的后缀名不能用*.cpp,不同编译不过,如下,原创 2017-04-05 22:21:14 · 403 阅读 · 0 评论 -
C++知识点:数组末端下一位置
c++语言规定,数组末端下一位置是合法的,但不允许对其解引用(即解引用是未定义的)。以下摘自《c++Primer中文版》第四版4.2.2 及4.2.4小节:原创 2017-05-03 22:46:46 · 453 阅读 · 0 评论 -
注意!!一定要谨慎使用c/c++原生指针
使用指针,要非常小心,今天在做一个小游戏时,就碰到一个使用原生指针的问题,找了好几个小时,才定位到问题的所在,晕。主要是顶层逻辑中引用了一个指针,而在业务逻辑中将此指针删除了。这种在代码量很少的情况下,很容易被发现,但是代码量多了,逻辑多了的时候,想一下子定位到问题所在,就没那么容易了。结论:避免直接使用原生指针,尽量都用智能指针,随意的delete,会在你稍不注意的时候,就引入bug,而且极原创 2017-04-05 22:22:18 · 619 阅读 · 0 评论 -
GNU C 、ANSI C、标准C、标准c++区别和联系
http://blog.sae.sina.com.cn/archives/749转载 2017-05-14 12:10:15 · 387 阅读 · 0 评论 -
C/C++计时函数
本文介绍了C/C++中比较常用的一些计时函数原创 2017-05-14 23:19:33 · 1093 阅读 · 0 评论 -
C++:内联函数
介绍在函数返回类型前加上关键字inline就可以将函数指定为内联函数。内联函数可避免函数调用开销。因为内联函数将在程序每个调用点上“内联地”展开,如cout 在编译时将展开为cout (a==b)。inline bool IsIntEqual( int a, int b ){ return static_castbool>( a == b );}内联函数适用于优化小的,只原创 2017-06-07 12:37:19 · 323 阅读 · 0 评论 -
C语言中被static修饰的函数或变量
被static修饰的函数可认为是局部函数,只能被本源码文件访问。而没有static关键字的函数可认为是全局函数(可在函数前写止extern,此关键字是默认的,所以可不写),可以跨文件被访问。static修饰的变量可类推,当在一个函数内部使用static修饰变量时,此变量保存的静态存储区,不因函数退出而销毁,只是只能在此函数中访问到而已。举例如下:function.h文件#pragma ...原创 2018-07-21 15:58:23 · 1045 阅读 · 0 评论 -
C++模板类中静态成员变量构造函数、析构函数未被调用
简要说明c++模板类中使用静态成员变量,如果此变量除了初始化声明外,没有被其它地方使用,则此静态成员变量的构造函数、析构函数均不会被调用。以下是网友解说(注:上述是在模板类的前提下才成立,读者可自行验证之):这涉及到C++的一个哲学观点:不要为不必要的成本付出代价。所以C++编译器通常只有第一次使用静态变量时才会进行初始化,这种情况与C++的就地声明有类似的原因。参看:模板类的静态成员...原创 2018-11-25 22:29:56 · 1330 阅读 · 0 评论 -
字符编码笔记:ASCII,Unicode和UTF-8
原文出处:http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html作者: 阮一峰日期: 2007年10月28日今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料。结果,这个问题比我想象的复杂,从午饭后一直看到晚上9点,才算初步搞清楚转载 2015-10-14 13:55:33 · 362 阅读 · 0 评论