
C++
lee1054908698
这个作者很懒,什么都没留下…
展开
-
makefile的使用
1.=是最基本的赋值:=是覆盖之前的值?=是如果没有被赋值过就赋予等号后面的值+=是添加等号后面的值2..PHONY是一个伪目标,可以防止在Makefile中定义的只执行命令的目标和工作目录下的实际文件出现名字冲突,另一种是提交执行makefile时的效率。...原创 2019-12-17 09:51:35 · 185 阅读 · 0 评论 -
C++按格式接收输入字符
https://blog.youkuaiyun.com/weixin_30838873/article/details/95660796转载 2019-12-16 17:49:09 · 1160 阅读 · 0 评论 -
windows下获取ip,mac,网卡等信息
#include "winsock.h" #include <stdio.h>#include <iphlpapi.h>#pragma comment(lib,"iphlpapi.lib")void main(){ IP_ADAPTER_INFO Interface[20]; PIP_ADAPTER_INFO NetInterface = NULL; DW...原创 2019-11-28 11:42:33 · 356 阅读 · 0 评论 -
C++运算符优先级
优先级运算符名称或含义使用形式结合方向说明1[]数组下标数组名[常量表达式]左到右 ()圆括号(表达式)/函数名(形参表) .成员选择(对象)对象.成员名转载 2012-09-01 21:58:38 · 264 阅读 · 0 评论 -
C++ const变量使用技巧总结
一.http://www.cnblogs.com/wxxweb/archive/2011/04/28/2031674.html二.const类型定义:指明变量或对象的值是不能被更新,引入目的是为了取代预编译指令 **************常量必须被初始化*************************cons的作用 (1)可以定义const常量转载 2012-09-04 10:31:44 · 386 阅读 · 0 评论 -
静态成员数据 静态对象初始化 .
1.静态成员数据的定义,与静态类型的变量的定义方式一样,要在成员数据的定义之前加关键字static。2.静态成员数据必须有确定的值,但由于在类的定义中不能对成员数据直接进行初始化,故必须在类定义的外部对静态成员数据再声明一次,并进行初始化,此时,前面不需要加关键字static。同时为了保持静态成员数据取值的一致性,一般在类的构造函数中不给静态成员数据设置初值。对静态成员数据初始化的顺序为它们在转载 2012-09-15 22:13:45 · 11303 阅读 · 1 评论 -
关于打包C++项目
1.打开要打包的“.lsn”文件。 2.菜单栏“文件”--->“添加”--->“新建项目” 3. 点击“项目类型”--->“其他项目类型”--->“安装和部署”,再在“模板”点击“安装项目”,点击“确定” 。4.在“文件系统”中点击“应用程序文件夹”,右边框变空白,在空白处右击鼠标,“添加”--->点击“项目输出”,出现一个对话框,点击“确定” 。 5.再右击鼠标,“添加”-转载 2013-01-07 19:35:45 · 1426 阅读 · 1 评论 -
内联函数
(1)什么是内联函数?内联函数是指那些定义在类体内的成员函数,即该函数的函数体放在类体内。(2)为什么要引入内联函数?当然,引入内联函数的主要目的是:解决程序中函数调用的效率问题。另外,前面我们讲到了宏,里面有这么一个例子:#define ABS(x) ((x)>0? (x):-(x))当++i出现时,宏就会歪曲我们的意思,换句话说就是:宏的定义很容易产生二意性。转载 2013-07-13 14:22:46 · 447 阅读 · 0 评论 -
函数指针
转载请注明原文网址: http://www.cnblogs.com/xianyunhe/archive/2011/11/26/2264709.html函数指针是通过指向函数的指针间接调用函数。函数指针可以实现对参数类型、参数顺序、返回值都相同的函数进行封装,是多态的一种实现方式。由于类的非静态成员函数中有一个隐形的this指针,因此,类的成员函数的指针和一般函数的指针的表现形式不一样。转载 2013-07-25 14:30:56 · 397 阅读 · 0 评论 -
exit(0)与exit(1)、return区别
exit(0):正常运行程序并退出程序;exit(1):非正常运行导致退出程序;return():返回函数,若在主函数中,则会退出函数并返回一值。详细说: 1. return返回函数值,是关键字; exit 是一个函数。 2. return是语言级别的,它表示了调用堆栈的返回;而exit是系统调用级别的,它表示了一个进程的结束。 3. retur转载 2013-10-26 20:19:27 · 535 阅读 · 0 评论 -
Sizeof与Strlen的区别与联系
一、sizeof sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。 它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。 由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所转载 2013-11-03 21:05:37 · 409 阅读 · 0 评论 -
C/C++
1. C中static有什么作用(1)隐藏。 当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性,故使用static在不同的文件中定义同名函数和同名变量,而不必担心命名冲突。(2)static的第二个作用是保持变量内容的持久。存储在静态数据区的变量会在程序刚开始运行时就完成初始化,也是唯一的一次初始化。共有两种变量存储在静态存储区:全局变量和static原创 2015-09-02 16:51:48 · 511 阅读 · 0 评论 -
linux下 C++如何实现多线程
多线程是多任务处理的一种特殊形式,多任务处理允许让电脑同时运行两个或两个以上的程序。一般情况下,两种类型的多任务处理:基于进程和基于线程。基于进程的多任务处理是程序的并发执行。线程的多任务处理是同一程序的片段的并发执行。多线程程序包含可以同时运行的两个或多个部分。这样的程序中的每个部分称为一个线程,每个线程定义了一个单独的执行路径。C++ 不包含多线转载 2017-01-20 18:17:20 · 12550 阅读 · 5 评论 -
快速排序
快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也常常出现快速排序的身影。 总的说来,要直接默写出快速排序还是有一定难度的,因为本人就自己的理解对快速排序作了下白话解释,希望对大家理解有帮助,达到快转载 2012-08-20 17:01:15 · 393 阅读 · 0 评论 -
浅谈C++容器( 三) .
有了对数据结构的基本认识,那么对高级语言所提出的容器的概念就很容易理解。下面我们就来了解一下C++ 标准模板库(STL) 提所供的10 种通用容器。 什么是容器 首先,我们必须理解一下什么是容器,在C++ 中容器被定义为:在数据存储上,有一种对象类型,它可以持有其它对象或指向其它对像的指针,这种对象类型就叫做容器。很简单,容器就是保存其它对象的对象,当然这是一个朴素的理解,这种“对象”还包转载 2012-08-14 10:16:30 · 1027 阅读 · 0 评论 -
bool,float,指针变量与“零值”比较的if语句
1. bool 型变量与“零值”进行比较 bool flag; if(flag)if(!flag)如下写法均属不良风格:if(flag==TURE)if(flag==1)if(flag==FALSE)if(flag==0)2. fl原创 2011-09-13 10:26:07 · 912 阅读 · 0 评论 -
C++中引用是用来做什么用的,有什么好处
C语言没有引用,C++才有.引用能起到指针的部分作用,但是比指针安全.一个引用可以看作是某个变量的一个"别名"。对引用进行操作就像对原变量进行操作一样。主要用于函数的参数传递时使用。因为C语言没有类似VB的“传引用调用”这个功能,所以C++的引用填补了这个空白。从此即使需要改动参数,也直接传递一个变量过去即可。这在操作符重载中有更重要的意义。int a; //声明变量翻译 2012-03-08 09:52:02 · 13038 阅读 · 6 评论 -
关于main函数
标准的main函数有两种: int main(void) //不需要参数 int main(int argc, char *argv[]) //需要参数,argc为给程序的参数的个数,argv中保存的是给函数的参数,都是字符串。都需要返回值,这样用户可以知道程序是否正确执行。其他类型的mai原创 2012-03-27 16:54:10 · 451 阅读 · 0 评论 -
虚表/虚指针
转载自:http://blog.sina.com.cn/s/blog_6215fe350100fg9i.html虚函数在c++中的实现机制就是用虚表和虚指针,但是具体是怎样的呢?从more effecive c++其中一篇文章里面可以知道:是每个类用了一个虚表,每个类的对象用了一个虚指针。具体的用法如下:class A{public:virtual void f();v转载 2012-08-06 09:49:06 · 568 阅读 · 0 评论 -
虚函数与纯虚函数
1、基本形式:virtual ReturnType Function_1(); //虚函数声明virtual ReturnType Function_2() = 0; //纯虚函数声明先讲示例吧,再总结结论。2、示例:class Animail{public: void Function_1() {cout };class转载 2012-08-06 18:54:45 · 317 阅读 · 0 评论 -
静态联编和动态联编
联编是指一个计算机程序自身彼此关联的过程,在这个联编过程中,需要确定程序中的操作调用(函数调用)与执行该操作(函数)的代码段之间的映射关系;按照联编所进行的阶段不同,可分为静态联编和动态联编;静态联编:是指联编工作是在程序编译连接阶段进行的,这种联编又称为早期联编;因为这种联编是在程序开始运行之前完成的;在程序编译阶段进行的这种联编又称静态束定;在编译时就解决了程序中的操作调用与执行该转载 2012-08-06 19:43:26 · 618 阅读 · 0 评论 -
引用与指针的区别
转自:http://www.programbbs.com/ 在c++函数中,形式参数用 引用和用指针都可以起到在被调用函数中改变调用函数的变量的作用。什么时候用引用作参数?什么时候用指针作参数呢 void function (int *ptr); void function(int &ref); 没有 特定的规定。。学的久了,就 会习惯什么时候用指针什么时候用引用了!引用与转载 2012-07-25 21:52:17 · 256 阅读 · 0 评论 -
浅谈C++容器(一)
在面向对象的语言中,大多引入了容器的概念。那么 什么 是 容器?实质上就是一组相同类型对象的集合,但是它又不仅仅像数组那样简单,它实现了比数组更复杂的数据结构,当然也实现了比数组更强大的功能。C++ 标准模板库里提供了10 种通用的容器类,它基本上可以解决程序中遇到的大多数问题。 现在我主要来说明这10 种通用容器的功能用途以及相互之间的相同与异同。但是在这里,我不提倡一开始就着手从这转载 2012-08-14 10:14:33 · 473 阅读 · 0 评论 -
浅谈C++容器(二)
上面从整体上说明了数据结构的概念和分类,下面就具体的几种常用的数据结构作以说明。 线性表 数据结构中最简单最基本的结构是线性表 。线性表是相同类型的数据元素的有限序列,数据元素之间具有顺序关系。从数据的存储结构上线性表可以分为顺序表和链表两类。顺序表即是对线性结构使用顺序存储结构的方式,链表即是对线性结构使用链式存储结构的方式。其两者的特点就是逻辑的线性结构对不同存储结构的实现。顺序表是一转载 2012-08-14 10:15:42 · 807 阅读 · 0 评论 -
浅谈C++容器(四)
vector ,deque 和 list 顺序性容器: 向量 vector : 是一个线性顺序结构。相当于数组,但其大小可以不预先指定,并且自动扩展。它可以像数组一样被操作,由于它的特性我们完全可以将vector 看作动态数组。在创建一个vector 后,它会自动在内存中分配一块连续的内存空间进行数据存储,初始的空间大小可以预先指定也可以由vector 默认指定,这个大小即转载 2012-08-14 10:17:46 · 1076 阅读 · 0 评论 -
浅谈C++容器(六) .
容器适配器 STL 中包含三种适配器:栈stack 、队列queue 和优先级priority_queue 。 适配器是容器的接口,它本身不能直接保存元素,它保存元素的机制是调用另一种顺序容器去实现,即可以把适配器看作“它保存一个容器,这个容器再保存所有元素”。 STL 中提供的三种适配器可以由某一种顺序容器去实现。默认下stack 和queue 基于deque 容器实现,priori转载 2012-08-14 10:19:15 · 846 阅读 · 0 评论 -
浅谈C++容器(五) .
关联容器 set, multiset, map, multimap 是一种非线性的树结构,具体的说采用的是一种比较高效的特殊的平衡检索二叉树—— 红黑树结构。(至于什么是红黑树,我也不太理解,只能理解到它是一种二叉树结构)因为关联容器的这四种容器类都使用同一原理,所以他们核心的算法是一致的,但是它们在应用上又有一些差别,先描述一下它们之间的差别。 set ,又称集合,实际上就是一组转载 2012-08-14 10:18:28 · 369 阅读 · 0 评论 -
continue和break的用法
continue 和 break 共同点是都是要结束当前循环;不同是:continue是结束当前循环,并进行所在循环体的下次循环break是结束当前循环,并不再进行循环而是执行循环体以下的语句原创 2011-09-09 21:47:39 · 300 阅读 · 0 评论