c++
文章平均质量分 60
wang13342322203
这个作者很懒,什么都没留下…
展开
-
C++文件操作——fopen/fseek/ftell/fread/fwrite/fclose等函数用法
原地址:https://blog.csdn.net/u010270155/article/details/47167363fopen函数原型 FILE * fopen(const char *path,cost char *mode)作用:打开一个文件,返回指向该文件的指针参数说明:第一个参数为欲打开文件的文件路径及文件名,第二个参数表示对文件的打开方式注:mode有以下值:r:只读方式打开,文件...转载 2018-06-04 09:58:42 · 905 阅读 · 0 评论 -
c++多态的实现及其原理 (超级全面)
C++的多态性用一句话概括就是:在基类的函数前加上virtual关键字,在派生类中重写该函数,运行时将会根据对象的实际类型来调用相应的函数。如果对象类型是派生类,就调用派生类的函数;如果对象类型是基类,就调用基类的函数 1:用virtual关键字申明的函数叫做虚函数,虚函数肯定是类的成员函数。 2:存在虚函数的类都有一个一维的虚函数表叫做虚表,类的对象有一个指向虚表开始的虚指针。虚表是和类...转载 2018-06-13 10:48:21 · 244 阅读 · 0 评论 -
.h 与 .hpp 文件
hpp,顾名思义等于.h加上.cpp,在boost、Xerces等开源库中频繁出现,偶在机缘巧合之下,学得一招半式,遂记录如下,以供参考学习。 hpp,其实质就是将.cpp的实现代码混入.h头文件当中,定义与实现都包含在同一文件,则该类的调用者只需要include该hpp文件即可,无需再 将cpp加入到project中进行编译。而实现代码将直接编译到调用者的obj文件中,不再生成单独的obj...转载 2018-06-13 11:51:12 · 195 阅读 · 0 评论 -
Qt中QString,int,char,QByteArray之间相互转换
int 转 QStringint m=1;QString b;b=QString::number(m)QString 转intQString a="1111"int b;b=a.toInt()char 转换为 QStringchar a='b';QString str;str=QString(a);QString 转换为 charQString str="qq";char *ch;ch = st...转载 2018-06-13 15:50:22 · 175 阅读 · 0 评论 -
UDP协议的两个主要方法sendto和recvfrom详解
sendto()简述: 向一指定目的地发送数据。 #include <winsock.h> int PASCAL FAR sendto( SOCKET s, const char FAR* buf, int len, int flags, const struct sockaddr FAR* to, int tolen); s:一个标识套接口的描述字。 buf:包含待发送数...转载 2018-06-13 15:59:15 · 1632 阅读 · 0 评论 -
VS2008简单调试方法
转载 2018-05-31 11:28:55 · 2431 阅读 · 0 评论 -
C++stream
原地址:https://blog.csdn.net/yfw418/article/details/1652768在C++中,有一个stream这个类,所有的I/O都以这个“流”类为基础的,包括我们要认识的文件I/O,stream这个类有两个重要的运算符:1、插入器(<<) 向流输出数据。比如说系统有一个默认的标准输出流(cout),一般情况下就是指的显示器,所以,cout<&l...转载 2018-05-31 13:16:50 · 7041 阅读 · 0 评论 -
malloc、calloc、realloc的区别
原地址:https://blog.csdn.net/shuaishuai80/article/details/6140979(1)C语言跟内存分配方式<1>从静态存储区域分配. 内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量、static变量.<2>在栈上创建 在执行函数时,函数内局部变量的存储单元都可以在栈上创建...转载 2018-05-31 13:20:14 · 144 阅读 · 0 评论 -
C/C++——C++中new与malloc的10点区别
原地址:https://blog.csdn.net/linux_ever/article/details/50533149前言几个星期前去面试C++研发的实习岗位,面试官问了个问题:new与malloc有什么区别?这是个老生常谈的问题。当时我回答new从自由存储区上分配内存,malloc从堆上分配内存;new/delete会调用构造函数/析构函数对对象进行初始化与销毁;operator new/d...转载 2018-05-31 13:29:36 · 160 阅读 · 0 评论 -
C++ 异常机制分析
原地址:http://www.cnblogs.com/QG-whz/p/5136883.htmlC++异常机制概述异常处理是C++的一项语言机制,用于在程序中处理异常事件。异常事件在C++中表示为异常对象。异常事件发生时,程序使用throw关键字抛出异常表达式,抛出点称为异常出现点,由操作系统为程序设置当前异常对象,然后执行程序的当前异常处理代码块,在包含了异常出现点的最内层的try块,依次匹配c...转载 2018-05-31 13:34:01 · 129 阅读 · 0 评论 -
C++ 函数重载 详解
原地址:https://blog.csdn.net/zhanghow/article/details/53588458在实际开发中,有时候我们需要实现几个功能类似的函数,只是有些细节不同。例如希望交换两个变量的值,这两个变量有多种类型,可以是 int、float、char、bool 等,我们需要通过参数把变量的地址传入函数内部。在C语言中,程序员往往需要分别设计出三个不同名的函数,其函数原型与下面...转载 2018-05-31 13:40:59 · 214 阅读 · 0 评论 -
C++ operator关键字(重载操作符)
http://blog.sina.com.cn/s/blog_4b3c1f950100kker.html operator是C++的关键字,它和运算符一起使用,表示一个运算符函数,理解时应将operator=整体上视为一个函数名。 这是C++扩展运算符功能的方法,虽然样子古怪,但也可以理解:一方面要使运算符的使用方法与其原来一致,另一方面扩展其功能只能通过函数的方式(c++中,“功能”都是...转载 2018-05-31 13:58:16 · 269 阅读 · 0 评论 -
当前不会命中断点还未为文档加载任何符号——问题探究
原地址:https://blog.csdn.net/tr1912/article/details/51111824今天在调试牛腩网页的时候遇到了一个问题需要用到断点调试来解决,可是加了断点之后出现了下面的情况:然后就郁闷了,查了百度之后得到了如下的结果: 断点调试是VS中的一大利器,有了它我们可以快速定位到代码的问题所在。在某些情况下会导致设置了断点后程序无法在断点处停下,下面分4种...转载 2018-06-14 15:26:12 · 1493 阅读 · 0 评论 -
C语言:详解指针
原地址:https://blog.csdn.net/sinat_27706697/article/details/47856491本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。指针应该算得上是c语言的精华,但也是难点。很多教程或者博客都有对其详细的讲解与分析。我这一节的内容,也是讲解指针,但我会尽量使用图解的方式,使大家很容易理解及掌握。一、...转载 2018-06-29 21:33:33 · 769 阅读 · 0 评论 -
(struct)结构体变量作为函数参数调用的方法小结
原地址:https://blog.csdn.net/tham_/article/details/45370607结构体变量、结构指针变量、结构数组作为函数的参数应用实例分析 struct stud{ long int num; float score;};/*结构体变量作为函数的参数,修改之后的成员值不能返回到主调函数*/void funvr(struct stud t){ t.num=20001...转载 2018-06-29 21:47:25 · 36688 阅读 · 1 评论 -
C语言指针详解
原地址:https://www.cnblogs.com/lulipro/p/7460206.html前言这不是我第一次写关于C指针的文章了,只是因为指针对于C来说太重要,而且随着自己编程经历越多,对指针的理解越多,因此有了本文。然而,想要全面理解指针,除了要对C语言有熟练的掌握外,还要有计算机硬件以及操作系统等方方面面的基本知识。所以我想通过一篇文章来尽可能的讲解指针,以对得起这个文章的标题吧。 ...转载 2018-06-29 22:05:03 · 320 阅读 · 0 评论 -
malloc 函数详解
很多学过C的人对malloc都不是很了解,知道使用malloc要加头文件,知道malloc是分配一块连续的内存,知道和free函数是一起用的。但是但是:一部分人还是将:malloc当作系统所提供的或者是C的关键字,事实上:malloc只是C标准库中提供的一个普通函数而且很多很多人都对malloc的具体实现机制不是很了解。1,关于malloc以及相关的几个函数 #include <s...转载 2018-06-29 22:09:32 · 274099 阅读 · 14 评论 -
c++ 中的函数调用中的参数传递
简单变量作参数简单变量作参数的传递方式是按值传递,在这种传递方式下,在函数体中对形参的修改不会影响实际参数的值,因为它们使用各自的存储空间。下面便是一个简单变量作参数的实例。调用 swap 参数同时把 xx 的值传送给形参 aa,把 yy 的值传送给形参 bb,在函数体中对形参 aa 和 bb 的操作是与对应的实参 xx 与 yy 无关的,因为它们使用各自的存储空间。void swap(int a...转载 2018-06-29 22:15:18 · 641 阅读 · 0 评论 -
c++如何在一个类中定义指向另外一个类的指针
一直接定义即可。比如已有一个类class A, 再定义一个类class B,这样在B的定义中,就可以有一个A*类型的成员变量。比如class B{ A * a;};这里的B::a就是一个A*类型的指针。需要注意的是,要使用这种形式的定义,要么A的定义在B的上方,要么在B定义前加一个A类的声明。如class A;class B{ A * a;};二、类名 *指针名;如 在一个类中定义指向...转载 2018-06-25 20:32:15 · 10693 阅读 · 3 评论 -
由C++类指针初始化引起的问题汇总
还是得从最近一个比较“诡异”的问题说起:C++ 类指针定义的时候没有初始化的时候,居然可以安全的调用类内部的成员函数而不出错。 这段代码是来源于之前项目,然后我把问题抽离出来,另开一个工程测试的时候,还是这个结果,最开始以为是VC编译器的问题,最后跑到mac下用gcc编译的结果依旧,说明这不是偶然现象,此时我才开始真正思考背后的缘由。在不断的测试得出的结论是:初始化为NULL的类指针可以...转载 2018-06-25 20:39:37 · 1149 阅读 · 1 评论 -
C++各种构造函数的写法
构造函数 ,是一种特殊的方法 。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中 。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。(摘自百度百科 构造函数 )。一、最基本的构造函数1 class Base2 {3 public:4 Base(int var) : m_Var(...转载 2018-06-25 21:25:39 · 4155 阅读 · 0 评论 -
C++中new一个类的指针,有何没有括号有什么区别
error:没有合适的默认构造函数可用 ,一般也是这个问题括号分为两种,中括号[]或小括号()。为方便说明,定义指针类型为class test, 指针为test *ptest;一、 中括号的情况。中括号是用来标示申请的是一个对象,还是一组对象。1 没有中括号时,即ptest = new test; 这时ptest得到的是一个对象*ptest, 释放时使用delete ptest;2 带有中括号时,...转载 2018-06-25 21:43:34 · 4622 阅读 · 1 评论 -
C++中 类的构造函数理解(一)
写在前面这段时间完成三个方面的事情:1、继续巩固基础知识(主要是C++ 方面的知识)2、尝试实现一个iOS的app,通过完成app,学习iOS开发中要用到的知识3、完善实验室的研究项目,为毕业设计做准备有了这三个安排之后,就可以把一天的时间大致分为三份了。对于C++ 知识点的学习这部分,主要是看《C++ Primer》以及本科使用的英文教材《C++:How to program》来进行,今天主要探...转载 2018-06-25 22:02:31 · 1582 阅读 · 0 评论 -
C++ 中类的构造函数理解(二)
写在前面上次的笔记中简要的探索了一下C++中类的构造函数的一些特性,这篇笔记将做进一步的探索。主要是复制构造函数的使用。复制构造函数复制构造函数也称拷贝构造函数,它只有单个形参,且该形参是对本类类型对象的引用。其作用有以下几点:1、根据另一个同类型的对象显示或隐式初始化一个对象2、复制一个对象,将它作为实参传递给一个函数3、从函数返回时复制一个对象4、初始化顺序容器中的元素5、根据元素初始化列表初...转载 2018-06-25 22:04:49 · 121 阅读 · 0 评论 -
fopen、fwrite使用
函数fopen1.函数简介函数功能:打开一个文件函数原型:FILE * fopen(const char * path,const char * mode);相关函数:open,fclose,fopen_s[1],_wfopen所需库: <stdio.h>返回值:文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回NULL,并把错误代码存在errno 中。一般而言,...转载 2018-06-27 10:58:53 · 7545 阅读 · 0 评论 -
fstream详解
在看C++编程思想中,每个练习基本都是使用ofstream,ifstream,fstream,以前粗略知道其用法和含义,在看了几位大牛的博文后,进行整理和总结:这里主要是讨论fstream的内容:#include <fstream>ofstream //文件写操作 内存写入存储设备 ifstream //文件读操作,存储设备读区到内存中fstream ...转载 2018-06-27 15:43:23 · 17478 阅读 · 3 评论 -
数据结构之:链表详解
原地址:https://blog.csdn.net/lishuzhai/article/details/50972779链表是 数据结构中很重要的基础 部分,下面 我通过简单的故事来将链表的内容串起来解释一下,同时也是总结一下自己的学习内容:故事:某一天,乐乐,丰丰,呆子,星星,领领,小韦6位小朋友带领着8个小朋友一起去山上玩耍。当玩耍过后,天下起了大雨 !!于是 14位小朋友赶紧返回,不幸的是山...转载 2018-06-27 19:04:44 · 414 阅读 · 0 评论 -
链表数据结构(C/C++语言实现)
注意:没有使用malloc和free;加了一个头文件,用于清屏和暂停;还有就是一个错误特别容易被忽略,那就是主函数中声明了LinkList p,然后就直接创建链表,忘了给p分配空间。一定要先初始化链表再建立。以下代码说白了就是一个个的函数堆出来的,只是要注意函数的参数有时候有引用符&,有时候没有,我总结了一个便于记忆的小技巧:如果你想要对链表做出任何改变,请一定加上&;如果你对链表...转载 2018-06-27 19:06:28 · 149 阅读 · 0 评论 -
单链表 c实现 详细注释
原地址:https://blog.csdn.net/sinat_40477296/article/details/78877547经过很长时间的研究,因为刚学指针就像拿单链表来实现以下, 单链表其实只要理解了 指针域的移动就不是问题了 从开始的抄代码 到后面的自己写 参考书目《大话数据结构》#include <stdio.h>#include <stdlib.h>#in...转载 2018-06-27 19:35:20 · 184 阅读 · 0 评论 -
List (单链表17个函数讲解)
原地址:https://blog.csdn.net/l953972252/article/details/51364839链表时一种常用的数据结构,是通过“链”来建立起数据元素之间的逻辑关系,这种用链接方式储存的线性表简称链表(Link List)。一,链表与顺序表的对比 在接触链表之前大家想必已经了解过了顺序表的储存结构方式,顺序表与链表的不同之处如下: 1.顺序表是物理位置上相邻来表示数据元素...转载 2018-06-27 20:06:37 · 1603 阅读 · 0 评论 -
C++ 单链表基本操作分析与实现
链表 链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。 相比于线性表顺序结构,链表比较方便插入和删除操作。 创建头节点 手动new一个新的Node,将Node的next置为NULL...转载 2018-06-27 20:13:23 · 18571 阅读 · 1 评论 -
Windows API函数大全(精心总结)
原地址:https://blog.csdn.net/hzm8341/article/details/56505108WindowsAPI函数大全(精心总结) 目录1. API之网络函数... 12. API之消息函数... 13. API之文件处理函数... 24. API之打印函数... 55. API之文本和字体函数... 76. API之菜单函数... ...转载 2018-07-30 10:13:55 · 30406 阅读 · 4 评论 -
void类型和void* 的用法
https://www.cnblogs.com/yuanyongbin/p/8058755.htmlC语言中的void 和 void * 总结1、void的作用 c语言中,void为“不确定类型”,不可以用void来声明变量。如:void a = 10;如果出现这样语句编译器会报错:variable or field ‘a’ declared void。 在C语言中void ...转载 2018-08-02 13:31:21 · 531 阅读 · 0 评论 -
VS2008编译的程序在某些机器上运行提示“由于应用程序配置不正确,应用程序未能启动”的问题
https://blog.csdn.net/buhuizheyangba/article/details/7220598 使用VS2008编译了一个程序,使用到自己编译的DLL,丢到某些机子上无法运行,提示“由于应用程序配置不正确,应用程序未能启动”的错误,装了vcredist_x86也没有用,开始以为是DLL的问题,后来换个简单的程序,仍然不行,百撕不得其解,后来上网找,下面有说了很多解决办...转载 2018-08-15 09:01:05 · 668 阅读 · 0 评论 -
github上的C++开源项目汇总
https://blog.csdn.net/watson2016/article/details/53018214转载 2018-08-08 15:33:52 · 8212 阅读 · 0 评论 -
野指针及c++指针使用注意点
https://www.cnblogs.com/mrlsx/p/5419030.html避免野指针的产生“野指针”的成因主要有:1)指针变量没有被初始化。任何指针变量刚被创建时不会自动成为NULL指针,它的缺省值是随机的,它会乱指一气。所以,指针变量在创建的同时应当被初始化,要么将指针设置为NULL,要么让它指向合法的内存。char *p; //此时p为野指针 2)指针p...转载 2018-08-20 11:09:23 · 595 阅读 · 0 评论 -
C++ 释放指针操作
https://blog.csdn.net/qq_29333911/article/details/78813299C++标准规定:delete空指针是合法的,没有副作用。所以我们在Delete指针后赋值为NULL或0是个好习惯。对一个非空指针delete后,若没有赋NULL,若再次delete的话有可能出现问题。如下代码: 可以看出delete是释放指针指向的内存,并不是指...转载 2018-08-20 11:10:49 · 4935 阅读 · 0 评论 -
C++指针释放问题
https://blog.csdn.net/u011473714/article/details/50783850今天看到了一个问题,其实在项目中也经常遇到指针释放的问题,先看看一个简单的指针释放的问题:************************************** 问题如下: (1)一般在c++类中有成员指针的话,会在类的析构函数里释放(delet...转载 2018-08-20 11:13:04 · 6432 阅读 · 0 评论 -
C/C++指针使用常见的坑
https://baijiahao.baidu.com/s?id=1576257846027912679&wfr=spider&for=pcC/C++中的指针让程序员有了更多的灵活性,但它同时也是一把双刃剑,如果用的不好,则会让你的程序出现各种各样的问题,有人说,C/C++程序员有一半的工作量是花在处理由指针引起的bug上,可想而知,指针中包含的陷阱是多么可怕。既然如此,我们在...转载 2018-08-20 11:15:22 · 966 阅读 · 0 评论 -
typedef
https://baike.baidu.com/item/typedef/9558154typedef 编辑typedef是在计算机编程语言中用来为复杂的声明定义简单的别名,它与宏定义有些差异。它本身是一种存储类的关键字,与auto、extern、mutable、static、register等关键字不能出现在同一个表达式中。中文名声明类型外文名typedef性 ...转载 2018-08-20 19:47:12 · 96 阅读 · 0 评论