![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
lengyuyan007
这个作者很懒,什么都没留下…
展开
-
C++ 反射机制实现
C++ 反射机制实现原创 2023-03-09 16:51:22 · 190 阅读 · 0 评论 -
C++中#和##
C++中#和##原创 2023-03-09 16:49:06 · 185 阅读 · 0 评论 -
C++ std::function的使用方法(c++11)
c++11系列之 std::function原创 2023-03-09 16:25:57 · 905 阅读 · 0 评论 -
字符编码详解
第一部分:首先讲下自己遇到的问题 两边系统都是win7。用c语言搭建了一个用ftp服务器跟前端来传输文件,默认只能设置为二进制文件。前端文本文件编码格式为utf-8, 前端吧文本文件跟dll等文件压缩成包,然后访问ftp服务器,把文件上传到服务器上。我这边接收到压缩文件,解压。问题出来了,对于包含中文的文本文件,如果解压成写字板形式,乱码。解压成记事本,不乱码。但是如果把转载 2016-11-07 22:32:20 · 508 阅读 · 0 评论 -
extern "C"的简单解析
1.揭密extern "C"extern "C"包含双重含义,从字面上即可得到:首先,被它修饰的目标是 "extern”的;其次,被它修饰的目标是 "C”的。 首先来看一下 "extern”的含义: a.在一个文件内,如果外部变量不在文件的开头定义,其有效范围只限定在定义到文件的结束处。如果在定义前需要引用该变量,则要在引用之前用关键字 "extern” 对该变量做“外部变量声明”转载 2016-11-07 22:40:14 · 335 阅读 · 0 评论 -
C++的文件操作
很多人在C++编程中习惯使用ANSI C下的文件类型指针FILE来执行文件的有关操作,这难免影响C++程序的总体美观性。另外,C++标准IO库中提供了更为完善、易用的文件操作方法,所以建议使用标准库来实现文件的输入/输出,培养一种好的编程习惯。1.文件的输入输出文件操作的头文件有:ifstream提供文件读取功能;ofstream提供文件写入功能;fstream提供文件的读写功能(转载 2016-11-07 22:50:57 · 300 阅读 · 0 评论 -
std::function
不仅C++11中可以用;先来看看下面这两行代码:std::functionvoid(EventKeyboard::KeyCode, Event*)> onKeyPressed;std::functionvoid(EventKeyboard::KeyCode, Event*)> onKeyReleased;这两行代码是从Cocos2d-x中摘出来的,重点是这两行代码的定义啊转载 2017-07-25 13:54:37 · 311 阅读 · 0 评论 -
C++类的成员函数的指针和mem_fun适配器的用法
一、普通函数指针我们先来看一个最简单的函数:void fool(int a){ cout endl;}那么它的函数指针类型为:void (*) (int)我们可以这样测试:void (*pFunc)(int) = &foo;//这里pFunc是个指针pFunc(123);这样就会打印出整数123;为了简化,我们转载 2017-07-25 14:36:49 · 333 阅读 · 0 评论 -
vc编译器 msvcr.dll、msvcp.dll的含义和相关错误的处理
转自:http://blog.csdn.net/sptoor/article/details/6203376 有自己的补充首先看一张常见错误的图:很久没有写程式设计入门知识的相关文章了,这篇文章要来谈谈程式库 (Library) 连结,以及关于 MSVC 与 CRT 之间的种种恩怨情仇。如果你使用的作业系统是 Linux、Mac 或其他非 Windows 平台,你可以忽略这篇文章;...原创 2018-10-26 09:55:48 · 1511 阅读 · 0 评论 -
C++的四种强制转换
C++的四种强制转换 C++中的四种转换,是一个老生常谈的话题。但是对于初学者来说,该如何选择哪种转换方式仍然会有点困惑。而且我总是觉得“纸上得来终觉浅”,于是便“绝知此事要躬行”。于是利用闲暇时光,整理一下reinterpret_cast、const_cast、static_cast和dynamic_cast这四种强制转换的相关知识。(转载请指明出于breaksoftware的c...转载 2018-12-28 11:15:43 · 320 阅读 · 0 评论 -
50道典型程序员面试题
参考:http://zhedahht.blog.163.com/原创 2019-01-29 15:17:51 · 516 阅读 · 0 评论 -
开源日志log4cplus-1.2.0使用1
网上的方法不能照搬,这里总结下,实测有效。1 Log4cplus简介 log4cplus是C++编写的开源的日志系统,前身是java编写的log4j系统,受Apache Software License保护,作者是Tad E. Smith。 log4cplus具有线程安全、灵活、以及多粒度控制的特点,通过将日志划分优先级使其可以面向程序调试、运行、测试、和维护等全生命周期。你可原创 2016-10-24 23:10:43 · 1874 阅读 · 0 评论 -
C++11~综述
C++11,先前被称作C++0x,即ISO/IEC 14882:2011,是C++编程语言的一个标准。它取代第二版标准ISO/IEC 14882:2003(第一版ISO/IEC 14882:1998公开于1998年,第二版于2003年更新,分别通称C++98以及C++03,两者差异很小),且已被C++14取代。相比于C++03,C++11标准包含核心语言的新机能,而且扩展C++标准程序库,并入转载 2016-10-23 22:02:12 · 348 阅读 · 0 评论 -
C++ 对象的内存布局(下)
重复继承 下面我们再来看看,发生重复继承的情况。所谓重复继承,也就是某个基类被间接地重复继承了多次。 下图是一个继承图,我们重载了父类的f()函数。 其类继承的源代码如下所示。其中,每个类都有两个变量,一个是整形(4字节),一个是字符(1字节),而且还有自己的虚函数,自己overwrite父类的虚函数。如子类D中,f()覆盖了超类的函数,f1() 和f2() 覆盖转载 2016-10-23 15:58:13 · 176 阅读 · 0 评论 -
void* 和void详解
void的含义void即“无类型”,void*则为“无类型指针”,可以指向任何数据类型。void指针使用规范①void指针可以指向任意类型的数据,亦即可用任意数据类型的指针对void指针赋值。例如:int*pint;void *pvoid;pvoid = pint; /* 不过不能 pint= pvoid; */如果要将pvoid赋给其他类型指针,则需要强制类型转换转载 2013-05-15 14:08:53 · 554 阅读 · 0 评论 -
再次写给我们这些浮躁的程序员
2010年初写过一篇博客(我们是一群和平年代充满浮躁与抱怨的程序员),一年过去了,社会好像更浮躁,也有网友问我这方面的问题,于是有了下面这篇文章,再次写给我们这些刚入行浮躁的程序员,如何成长,以下是列出了一些成长的心得,我们不必每条都去实践,但是优秀的程序员成长过程中总会实践里面的几条。 多做项目,多思考不要害怕做事,刚毕业的同学最缺的就是工作经验,乱七八糟的项目能让你很快就了解了一个公司转载 2013-05-19 15:24:28 · 407 阅读 · 0 评论 -
C++ 传递数组的问题
转自http://blog.csdn.net/tanghw/article/details/6554538http://blog.csdn.net/wdqbupt/article/details/6858676 可以看看学学C++基础本文需要解决C++中关于数组的2个问题:1. 数组作为函数参数,传值还是传址?2. 函数参数中的数组元素个数能否确转载 2013-05-09 13:53:51 · 515 阅读 · 0 评论 -
C/C++中函数参数传递详解
1 // test.cpp : Defines the entry point for the console application. 2 // 3 4 #include "stdafx.h" 5 #include 6 7 using namespace std; 8 9 //值传递template 10 void swap1(T p,T q)11 {12转载 2013-05-10 10:18:33 · 720 阅读 · 0 评论 -
STL学习小结
转载地址:http://blog.csdn.net/byxdaz/article/details/4633826STL就是Standard Template Library,标准模板库。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说,STL是一些“容器”的集合,这些“容器”有list, vector,set,map等,STL也是算法和其它一些组件的集合。这里的“容器”和算法的转载 2013-05-13 20:01:17 · 564 阅读 · 0 评论 -
泛型编程的一些理解
泛型编程,其实只是一种思想,他是想通过一种通用的或者一般的方式来代替所有或者大部分的相似的函数;而STL(标准模板库)是他的实现的实体,也就是他体现了泛型编程,stl里面汇聚了很多老鸟的好的算法,数据结构形成的函数(我还只能理解到函数这个地步),把这些函数加到了C++里,这里是C++在C上的很大改进了;C++实现:STL是跨平台,跨语言的,而C++只是实现STL的一种比较好的形式;最开始S原创 2013-05-13 20:29:56 · 653 阅读 · 0 评论 -
C++编程需注意的一些小问题
大家对C++编程应该是驾轻就熟了,但往往也会产生一些误解,下面来总结一下我需要注意的问题,与大家共勉:1,在类中静态成员变量时类锁共有的,避免放置个别对象的数据,且声明静态成员变量时要进行初始化,如果静态成员变量时private,就必须要静态成员函数去访问;2,在构造函数中对成员变量进行初始化的时候,顺序是按声明顺序进行初始化的;3,CObject的析构函数为虚函数的好处是,他的派生类原创 2013-05-13 20:58:03 · 596 阅读 · 0 评论 -
typeid
在揭开typeid神秘面纱之前,我们先来了解一下RTTI(Run-Time Type Identification,运行时类型识别),它使程序能够获取由基指针或引用所指向的对象的实际派生类型,即允许“用指向基类的指针或引用来操作对象”的程序能够获取到“这些指针或引用所指对象”的实际派生类型。在C++中,为了支持RTTI提供了两个操作符:dynamic_cast和typeid。 dyn转载 2016-10-21 22:19:20 · 213 阅读 · 0 评论 -
C++ 虚函数表解析
前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。 关于虚函数的使转载 2016-10-23 14:19:47 · 170 阅读 · 0 评论 -
C++ 对象的内存布局(上)
前言 07年12月,我写了一篇《C++虚函数表解析》的文章,引起了大家的兴趣。有很多朋友对我的文章留了言,有鼓励我的,有批评我的,还有很多问问题的。我在这里一并对大家的留言表示感谢。这也是我为什么再写一篇续言的原因。因为,在上一篇文章中,我用了的示例都是非常简单的,主要是为了说明一些机理上的问题,也是为了图一些表达上方便和简单。不想,这篇文章成为了打开C++对象模型内存布局的一个引子,引发转载 2016-10-23 15:31:13 · 186 阅读 · 0 评论 -
scanf sscanf,sscanf_s及其相关用法
scanf sscanf,sscanf_s及其相关用法#include 定义函数 int sscanf (const char *str,const char *format,........);函数说明 sscanf()会将参数str的字符串根据参数format字符串来转换并格式化数据。格式转换形式请参考scanf()。转换后的结果存于对应的参数内。返回值 成功则返回参转载 2013-05-02 12:57:24 · 899 阅读 · 0 评论