- 博客(33)
- 资源 (2)
- 收藏
- 关注

原创 同步和异步概念的解释
同步就是一根筋,一件事从头到尾,干每件事情都得有确定的返回值,只有返回以后才执行下一步,有点一条道步步稳打走到黑的感觉异步就是笑面虎,他可以依次的做很多事情,具体每件事情,他不需要等完成后的返回值直接做下一步,有所有事情中同时处理游刃有余的感觉
2015-06-17 09:49:32
2026

原创 char *指针的详细解释
前段时间写了一篇char*和char[]的区别,今天对char*做个更深的理解1:char指针和其他指针一样,也是定义了一块地址,如int*定义了一块栈,4个字节,char*呢,现在写一段代码#includeusing namespace std;int main(){ int a=12; char b='67'; int *c=&a; char *d=&b; return
2015-06-12 06:39:26
22250
6

原创 一个同学的c++的故事(推测c++的由来)(一)
1:理解的类的定义 面向过程的编程将世界织成了一张网,网的节点环环相扣 面向对象的编程将世界分成了块,块与块之间相互关联和独立 在c++没有出现之前,c++之父或许发现了c语言的很多弊端,于是引进了类,但是为什么要引进类了,这里,我站在当时的一个立场,比如我当时就在上世纪70年代末,那个时候只有c语言等面向过程的语言,沿着这个思路,开始弥补c语言的不足,然
2015-06-08 14:35:55
2111

原创 总结:用一个例子包含c++的所有的基本知识点(一)
c++基础学习有近一个月了,每天十几个小时的敲代码,翻资料,验证,用完了两包a4纸,记录验证,个人感觉c++的基本知识和一些原理学的有点柳暗花明的意思,手头也没什么需求,就当自己给自己定义个需求,然后自己将他实现,争取涉及到c++的左右的基础方面的知识,这里的基础知识不包含stl库,mfc库,只是在控制台上开发,用最基础的数据结构,最基本的语法,以及宏定义,io流以及一些复合结构体,像类的封装,多
2015-06-05 09:15:01
1174

原创 c++函数的参数传递的原理及其过程
我们只是知道函数调用的过程是先传递参数,然后是函数体,然后是返回值的顺序,但是这个过程怎么实现的,以及参数的入栈顺序等等,这里我大致的也是实验的态度做个验证,验证这句话也是为了加深自己对函数的调用,以及参数的传递的一个深刻的解释1:验证的题目 1、函数的调用过程的顺序(可能不这么个说法),验证函数是参数先传递个给函数主体,然后是函数体,最后是返回值
2015-06-04 11:08:01
1523

原创 我眼中的c++编程总结-20150602
断断续续的学习了很多东西,有51、Avr、ARM、PLC、C\C++、C#、TB、MC、mql4、linux....等等,近乎填鸭或者囫囵吞枣的、甚至饿狼般的扑到里面,慢慢的积累和理解中,很多知识点都有感性的认识,或多或少的理解一些,或许是为了记忆罢了,将这些知识点整理收集一下,算是做个阶段性质的总结也非常的欢迎各个行业的专家或者大神能够发现本文的一些我理解的错误,能给我留言,因为我是缺乏对很
2015-06-02 10:19:28
1162
原创 中国历史年代史的一些总结-缕清上下五千年
闲着无聊,花了几天的时间整理了中国的历代王朝,主要是为了一目了然中国的朝代,熟话说读史使人明智,就当明智一回,算是对上下五千年的编年史做个整理
2015-06-24 14:01:22
3294
原创 安静的过马路----做一个平和的程序员
早上起的有点早,洗漱完毕后跑了一圈,无所事事的去上我是特别喜欢骑摩托的那种,喜欢那种发动机的震动和风呼呼而过的感觉,今早去公司也比较早,比往常提前了近半个小时作为一个程序开发的人,由于技术更新的速度过于快,从小又接受的传统的小学初中高中大学教育,很多时候都是在拼命的追赶,具体追赶什么,自己也不清楚做什么事情都是往前赶,学什么东西都是恨不得一下子的全部掌握,PDCA的学习方法十分的熟练
2015-06-19 10:49:42
924
1
转载 c++中string类的详解
通过在网站上的资料搜集,得到了很多关于string类用法的文档,通过对这些资料的整理和加入一些自己的代码,就得出了一份比较完整的关于string类函数有哪些和怎样用的文档了!下面先罗列出string类的函数有哪一些,然后再罗列出函数的原型,最后到代码的实现标准C++中提供的string类得功能也是非常强大的,一般都能满足我们开发项目时使用。现将具体用法的一部分罗列如下,只起一个抛砖
2015-06-16 09:57:37
525
原创 socket技术详解(看清socket编程)
socket编程是网络常用的编程,我们通过在网络中创建socket关键字来实现网络间的通信,通过收集大量的资料,通过这一章节,充分的了解socket编程,文章用引用了大量大神的分析,加上自己的理解,做个总结性的文章
2015-06-15 13:30:35
43264
4
原创 回调函数的相关知识点
1,:为什么想彻底解决回调函数前好长一段时间看过孙鑫老师的c++的深入浅出,在没有基础的情况下,囫囵吞枣的看了几遍,很多理解起来很吃力。后来花了很长一段时间打基础,现在打算以后几个月重新彻底的读懂这本书,马上就要开始学习第一章了,记得当时的windows运行机制和mfc的封装讲的很精彩,即的当时的那个回调函数好像是windows运行机制的核心,所以专门的讲这个回调函数的所有知识点罗列出来大
2015-06-12 15:32:45
678
原创 函数重载的意义详细说明
c++的函数的重载可以说是c++比较常用并且重要的特性了,深入底层的了解函数的重载对这个特性的灵活运用起到很关键的作用,很多也是自己通过自己的角度理解这个特性,还是从内存的存储机制的角度上看函数的重载,分析这个特性还是老流程:假设,然后验证,根据验证的条件编写相关的代码,然后根据代码的实际情况得出结论,对比假设,最后得出结论,发现新问题的话记录新问题1:函数重载:根据个人的理解就是讲函数重新的
2015-06-05 13:30:25
12758
原创 关于c++内存的一点总结20150603
对C/C++内存的管理一直是比较敏感的知识点,这方面的知识涉及到和底层硬件直接打交道,我关键又学那么长一段时间硬件,对这块知识点理解的又不是那么全面,借这段时间空暇时间多,稍微的做个总结,以后如果有更加深刻的理解的在做补充,如果有理解偏差,也请大家指正1:初步的了解c++对内存的分布 内存的空间,c++一共将这块空间分成了5个部分,就好比一个公司为了好管理,将公司分为
2015-06-03 06:01:16
603
原创 标准c++库和stl库,boost库,qt库的总结(一)
用了很长时间是stdio iostream 等头文件,一直有个疑惑,也用了很长一段是键的stl标准库中个别的类,间接性的知道了boost库,qt库等一系列的库昨天在有用到#include头文件的时候,想起了istream ostream fstream这些类到底在c++标准中占什么位置,记得在大脑中一直将他们定性到c++标准库,有忽然想起了stl标准模板库里面各个分类里没有包含io这个类别的,
2015-05-30 07:31:57
8544
原创 用C/C++解决一些数学问题(三)
1:对于任意的数组,怎么让这个数组从小到大或者从大到小排序 需求:输入一组数字,让它从大到小排序 代码如下#include using namespace std;void fun1(int str[],char n);int main(){ while(1) { int str[10]; for(int i=0;i<10;i++) {
2015-05-28 16:37:28
1218
原创 用C/C++解决一些数学问题(二)
1:在日常生活中,一大堆数据,我们要求出这些数据的最大值,这里以整数为例,主要也是重新缕清一下思路 需求:求出20个数中的最大的数,并且输出:#include using namespace std;int main(){ while (true) { int a[20]; for(int i=0;i<20;i++) { cout<<"请输入第"<<i
2015-05-27 17:00:06
2337
原创 C/C++的基本语言知识(五)
1:指针 1、指针的声明和初始化 数据类型 * 指针名 = 初始化地址值 2、指针的访问 3、访问指针的数据#include using namespace std;void main(){ int *a=new int; cout<<a<<endl; cout<<*a<<endl; int b=12; a=
2015-05-27 11:29:34
463
原创 用C/C++解决一些数学问题(一)
1:高中有道数学题是求n!的题,意思是求出1*2*3*....*n,现在做一个这样的程序 要求:输入n值(n必须是整形),然后求出n!,需要要将这个功能写入函数,然后直接调用函数 代码如下:#include using namespace std;int fun1(); //函数声明void main(){
2015-05-26 17:09:47
6003
原创 c++的基本语言知识(四 )
1:数组 数组通俗一点就是一系列的变量 1、声明一维数组的形式: []={}; 如: int a[5]; char b[2]={'a','b'}; 2、初始化一维数组: int a[5]; char b[2]={'a','b'}; char c[]="hello world"; int d[]={0}
2015-05-26 15:57:53
383
原创 c++的基本语言知识(三)
1:流程控制结构 1、if语句,if语句也被称为但分支语句,格式为 if() ; 2、if...else形式 if() ; else ; 3、if...else if...else形式
2015-05-26 13:28:03
382
原创 c++的基本语言知识(二)
1:运算符 c++包含了c语言的所有运算符,并且在其基础上增加了一下几种新的运算符 1、::作用域运算符 2、new:动态分配内存单元运算符 3、delete:删除动态分配内存单元运算符 4、*和→:成员指针选择运算符 需要注意的是,不同的运算符制定操作数的个数并不相同
2015-05-26 11:01:23
361
原创 c++的基本语言知识(一)
1:常量 1、常量就是不变的量,必须先声明后使用 2、常量包括三种,直接常量,符号常量和枚举常量 3、c++通过const关键词来定义符号常量其,说明形式 const = 定义常量需要注意 1。定义常量必须以const开头 2。类型名为基本类型
2015-05-26 06:37:03
559
原创 c/c++语言历史
学了这么长时间cpp了,整理一下c++的历史,所有的内容均是网上收集,自己加以整理,为了更方便的记忆1:c++的粗略历史 1969年:B语言 1972年~1973年:贝尔实验室研发c语言 1973年:unix通过c语言改写。后c语言开始大量改版传播。C语言之父(unix之父)丹尼斯.里奇
2015-05-25 16:14:57
780
原创 char* char[] string cstring 的区分和转换(二)
2:string cstring char* 1、string,cstring都是字符串模板类 2、string属于STL标准类里,已经被写入c++的标准中 3、cstring继承CSimpleStringT类,在mfc,ATL编程中运用较多 4、string可以构造出任何字符串 5、string和cstring都有构造函数,
2015-05-25 13:09:39
476
原创 char* char[] string cstring 的区分和转换(一)
1:char*和char[] 这两个首先得了解一下到底什么含义,char*是指针,char[]是一段字符数组 通过一个例子简单的区别 #includeusing namespace std;void main(){ char *p="hello"; char str[]="hello"; cout<<"p\t"<<p<<'\t'<<si
2015-05-25 09:58:42
461
原创 用c++程序解答一元二次方程,并且输出相关属性
1:首先分析一下需求,需要哪些东西 1、大致需求是根据一元二次方程的几个系数,输进去,然后通过c++计算,得出对应的值 2、需要写输入的功能,输入功能分别对三个值做一个大致的区分 3、对系数的等于0,大于0,小于0做区分 4、输出此函数的开口方向,对称轴,有几个根,根分别是多少,并且输出 5、根的输
2015-05-21 13:02:43
3852
原创 多种方法解决同一个问题(一)-----乘法口诀表
1:分析下原理 乘法口诀表如图 需要定义两个变量,一个是乘数,一个是被乘数,寻找乘数的规律:1;1、2;1、2、3;1、2、3、4... 寻找被乘数规律:1;2、2;3、3
2015-05-19 10:11:15
881
原创 MFC框架剖析(二)
具体的mfc是怎么封装和实现的,必须得对微软的程序内部运行机制了解清楚,才能更深的了解mfc的框架。想起有段经典的代码,在网上找到后,新建了一个简单的win32的应用程序,空项目,新建一个cpp粘贴进去,无误后,干脆专门就这一段代码分析一下windows的程序内部运行的机制,了解这个机制后,再在这个简单的机制上面寻找MFC 的封装过程,也为了更好的理解mfc的框架1:网上找的windows
2015-05-13 13:48:08
601
原创 MFC框架剖析(一)
mfc框架一直是很头疼的事情,看过mfc框架剖析的解释很多遍了,简单的原理也清除,但是对其中的细节等方面一直没有精力去详细的理解,今天抽出一天的时间专门的理解这个框架,到最后在在win32SDK的空项目上手工写一个mfc的程序,也算是将mfc框架的知识点做一次梳理1:先通过vs2012新建一个基础的mfc应用程序2:一切按照默认的建好后如下图:可以看到自动生成的mfc框架的一些文件
2015-05-13 13:01:20
877
原创 虚函数和纯虚函数的区别
虚函数和纯虚函数是比较容易混淆的两个函数1:一句话概括区别 纯虚函数继承接口,行为实现必须自己定义 虚函数继承接口和默认的行为2:虚函数为了重载和多态的需要,在基类中已经定义的,哪怕为空定义,因此,在子类中可以重写此函数,也可以不重写。 纯虚函数只是为了提供个接口,它基类中只有声明,没有定义。因此它的定义过程必须在子类中。3:使用背
2015-05-12 19:27:14
613
原创 消息队列整理(主要基于vs2012类向导里面的消息整理)
有点时间,将c++里面一些消息做一下规整,方便以后查询(为了方便看懂,全部用小写)1:C***Frame: w:窗口激活消息 wm_activate:当激活一项新任务时候通知应用程序 wm_activateapp:通知窗口用户,生成一个应用程序命令事件 wm_appcommand:检索剪切板格式的名称 wm_askcbf
2015-05-12 17:00:18
739
原创 DECLARE_DYNCREATE(class_name)的具体作用
DECLARE_DYNCREATE(class_name)的具体作用首先还是看msdn的解释和这个语句的定义:msdn的解释:启用 CObject对象 --将动态创建的派生类在运行时。DECLARE_DYNCREATE(class_name )框架使用此功能动态创建新的对象。 例如,创建的新视图,当您打开新文档。文档,查看,并且,框架类应支持动态创建,因为框架需
2015-05-12 14:27:57
8211
原创 #ifdef _DEBUG #define new DEBUG_NEW #endif
用vs2012的编译器根据向导生成的代码,里面都会出现#ifdef _DEBUG#define new DEBUG_NEW#endif这个的详细解释是什么呢,查看msdn解释如下:在寻找内存泄漏的帮助。在调试模式 (在 _DEBUG 符号定义) 时,DEBUG_NEW 记录其分配的每个对象的文件名和行号。 然后,那么,当您使用CMemoryState::
2015-05-12 13:39:29
2143
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人