C/C++ 编程
文章平均质量分 88
-少帅-
这个作者很懒,什么都没留下…
展开
-
多线程与多进程的区别:
■什么是多线程: 多线程是为了使得多个线程并行的工作以完成多项任务,以提高系统的效率。线程是在同一时间需要完成多项任务的时候被实现的。 使用线程的好处有以下几点: ·使用线程可以把占据长时间的程序中的任务放到后台去处理 ·用户界面可以更加吸引人,这样比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度 ·程序的运行速度可能原创 2012-09-03 12:26:43 · 399 阅读 · 0 评论 -
c++语法总结
c++语法总结1. I/O流的常用控制符 dec 置基数为10 hex 置基数为16 oct 置基数为8原创 2012-09-07 22:42:27 · 540 阅读 · 0 评论 -
STL模板类总结
STL模板类总结一 vector模板类1 包含在头文件vector中,内部机理是使用动态内存分配。2 如何定义vector类: vector str(5)//vector::vector(int n);3 []操作赋被重载,所以可以这样访问元素:str[n](n>=0 && n4 vector模板类(包括STL模板)可以接受一个可选模板参数,该参数指定使用哪个分配器对象原创 2012-09-07 22:44:09 · 768 阅读 · 0 评论 -
C++ 容器总结
第1章 容器第1条:慎重选择容器类型。标准STL序列容器:vector、string、deque和list。标准STL关联容器:set、multiset、map和multimap。非标准序列容器slist和rope。slist是一个单向链表,rope本质上是一“重型”string。非标准的关联容器hash_set、hase_multiset、hash_map原创 2012-09-07 22:37:14 · 691 阅读 · 0 评论 -
c++ 编程题总结
C++题目总结类型一:求和1、求和:S= 1+ 1/(1+2)+1/(1+2+3)+...+1/(1+2+3+...+50)#include using namespace std;int main(){ float s=1; int i,item=1; for (i=2;i { item+=i; s+原创 2012-09-07 22:39:09 · 1111 阅读 · 0 评论 -
冒泡排序算法(Bubble Sort):
冒泡排序算法(Bubble Sort):思路:多次比较和交换来实现;通过相邻数据交换来达到排序的目的;步骤:1、对数组中的各个数据依次比较相邻的两个元素的大小;2、如果前面的数据大于后面的数据,就交换这两个数据;经过一轮的多次比较排序后,便可以吧最小的数据排好;3、然后,再用同样的方法把剩下的数据逐个进行比较,最后便可以按照从小到大的顺序排号数组中各数据的顺序; #incl原创 2012-09-09 17:00:36 · 518 阅读 · 0 评论 -
UML类图
UML类图 UML的类图关系分为: 关联、聚合/组合、依赖、泛化(继承)。而其中关联又分为双向关联、单向关联、自身关联;下面就让我们一起来看看这些关系究竟是什么,以及它们的区别在哪里。1、关联双向关联:C1-C2:指双方都知道对方的存在,都可以调用对方的公共属性和方法。在GOF的设计模式书上是这样描述的:虽然在分析阶段这种关系是适用的,但我们觉得它对于描述设原创 2012-09-09 22:06:44 · 374 阅读 · 0 评论 -
快速排序算法
快速排序算法:交换排序的思想;排序算法步骤:1、 首先设定一个分界值,通过该分界值将数组分成左右两部分;2、 将大于等于分界值的数据集中到数组的右边,小于分界值的数据集中到数值的左边;此时,左边部分中各个元素都小于等于分界值,而右边部分中各个元素都大于等于分界值;3、 然后,左边和右边的数据可以独立排序;对于左侧的数组数据,又可以设定一个分界值将该部分数据分成左右原创 2012-09-09 16:59:37 · 502 阅读 · 0 评论 -
各种排序算法的时间复杂度
各种排序算法的时间复杂度选择排序、快速排序、希尔排序、堆排序不是稳定的排序算法,冒泡排序、插入排序、归并排序和基数排序是稳定的排序算法。冒泡法: 这是最原始,也是众所周知的最慢的算法了。他的名字的由来因为它的工作看来象是冒泡: 复杂度为O(n*n)。当数据为正序,将不会有交换。复杂度为O(0)。直接插入排序:O(n*n)选择排序:O(n*n)快速排序:平均时原创 2012-09-09 22:04:18 · 1851 阅读 · 0 评论 -
ObjextARX 删除图层实体
/* 函数名称: DrawMcLine 功能描述: 删除实体 返回类型: 无 参数意义: 无 修改记录: */ bool McAcad::eraseEntity(int soft) { try { struct resbuf * pRb = NULL; long nLen = 0; ads_name Names; ads_name entNa原创 2016-09-09 10:30:16 · 1640 阅读 · 0 评论 -
ObjectARX 添加图块坐标扩展数据
//图块坐标扩展数据 double w1 = GVI_Frame_Scale*291/2; double h1 = GVI_Frame_Scale*176/2; AcGePoint3d LDP = Inset_Center + AcGeVector3d(-w1,-h1,0);//图块左下点坐标 AcGePoint3d RUP = Inset_Center + AcG原创 2016-09-09 10:39:32 · 1671 阅读 · 0 评论 -
获取文件的绝对路径 和 注册表获取路径
想要访问执行程序(.exe)路径下的文件,有以下几个步骤: 1.先通过函数GetModuleFileName获取执行程序的绝对路径。 TCHAR szPath[ MAX_PATH ] = {0}; GetModuleFileName( NULL, szPath, MAX_PATH ); 其中GetModuleFileName函数为window原创 2016-09-13 08:59:54 · 5226 阅读 · 0 评论 -
ObjectARX 写扩展数据 和 查看扩展数据
////添加扩展数据======================static void TESTaddxdatacmd(){ads_name en;ads_point pt;////选择要添加扩展数据的对象if(acedEntSel(_T("\n选择要添加扩展数据的实体"),en,pt) != RTNORM){return;}AcDbObjectId entId;Acad原创 2016-09-14 15:49:21 · 3918 阅读 · 2 评论 -
ObjectARX 炸开实体程序段
/* 函数名称:AppendEntity() 创建日期:20160922 LukyRen 功能描述:获取空间模型实体ID 参数描述:pEnt :实体 返回类型:实体Id */ AcDbObjectId McAcad:: AppendEntity(AcDbEntity *pEnt) { AcDbDatabase *pDb = acdbHostApplicationServices原创 2016-09-22 11:19:45 · 2233 阅读 · 0 评论 -
c++ 面试总结(一)
1.线程与进程的区别及联系:进程概念:进程是表示资源分配的基本单位,又是调度运行的基本单位。线程概念:线程是进程中执行运算的最小单位,亦即执行处理机调度的基本单位。引入线程的好处:(1)易于调度(2)提高并发性(3)开销少(4)利于充分发挥多处理器的功能。 2. 进程和线程的关系:(1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。(2)资源分配给进原创 2012-09-07 22:47:09 · 565 阅读 · 0 评论 -
C++简单程序典型案例
C++简单程序典型案例【案例2-1】设计一个编写仅包含C++程序基本构成元素的程序/* //注释行开始This is the first C++ program. Designed by zrf */ //注释行结束#include //包含头文件using namespace std; //打开命名空间std// Thi原创 2012-09-07 23:05:33 · 12639 阅读 · 1 评论 -
c++虚函数 讲解
什么是虚函数?简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。为什么要引入虚函数?虚函数的作用是实现类的继承所体现的多态性,具体点是实现动态联编。从程序的角度上来说,在定义了虚函数后,可以在派生类中对虚函数重新定义,以实现统一的接口,不同定义过程,在程序的运行阶段动态地选择合适的成员函数。什么是多态性?简单点说,多态性是将接口与实现进行分离;C++实现运原创 2012-09-03 12:31:32 · 705 阅读 · 0 评论 -
c++中关于数组作为函数参数并传递数组元素个数的几种有效方法的讨论
c++中关于数组作为函数参数并传递数组元素个数的几种有效方法的讨论//由于数组的元素个数默认情况下是不作为实参内容传入调用函数的,本程序用来讨论有此带来的//相关问题,以及解决问题方法,即给调用函数传递数组的元素个数的几种有效方法并实现它#include#includeusing namespace std;void PutArray1(int *p,int le原创 2012-09-03 13:09:23 · 1092 阅读 · 0 评论 -
Visual C++MFC入门教程
Visual C++MFC入门教程目录+-- 第一章 VC入门|------ 1.1 如何学好VC|------ 1.2 理解Windows消息机制|------ 1.3 利用Visual C++/MFC开发Windows程序的优势|------ 1.4 利用MFC进行开发的通用方法介绍|------ 1.5 MFC中常用类,宏,函数介绍+-- 第二章 图形输出原创 2012-09-03 13:18:44 · 6958 阅读 · 1 评论 -
线程与进程的区别与联系
线程与进程的区别进程概念 进程是表示资源分配的基本单位,又是调度运行的基本单位。线程概念 线程是进程中执行运算的最小单位,亦即执行处理机调度的基本单位。如果把进程理解为在逻辑上操作系统所完成的任务,那么线程表示完成该任务的许多可能的子任务之一。例引入线程的好处(1)易于调度。(2)提高并发性。通过线程可方便有效地实现并发性。进程可创建多个线程来执行同一程序的不同部分原创 2012-09-03 12:29:51 · 258 阅读 · 0 评论 -
C++ 300题必会(面试宝典)
1. 面向对象的程序设计思想是什么?答:把数据结构和对数据结构进行操作的方法封装形成一个个的对象。 2. 什么是类?答:把一些具有共性的对象归类后形成一个集合,也就是所谓的类。 3. 对象都具有的二方面特征是什么?分别是什么含义?答:对象都具有的特征是:静态特征和动态特征。静态特征是指能描述对象的一些属性;动态特征是指对象表现出来的行为;原创 2012-09-03 12:35:13 · 2738 阅读 · 0 评论 -
字符串面试题(一)字符串逆序
几点说明1. 所有题目全部来自网络,书籍,或者我自己的面试经历,本人只是负责搜集整理。在此对原作者表示感谢!2. 我已经尽力确保文字及程序的正确性,但我毕竟是凡人,如果您发现了文章中的错误,或者有更好的解法,请一定留言相告,以免误导大家!3. 所有代码都采用C/C++编写很早就准备写一个字符串系列的面试题,本来已经写好了,大概有十几道题,但是写完才发现,文章好长,连我自己都没有耐心原创 2012-09-03 12:52:52 · 574 阅读 · 2 评论 -
深入理解指针
指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的 类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。 先声明几个指针放着做例子: 例一: (1)int*ptr; (2)char*ptr; (3)int**ptr原创 2012-09-03 13:07:23 · 402 阅读 · 0 评论 -
C语言超级经典400道题目
C语言超级经典400道题目 1、C语言程序的基本单位是____ A) 程序行 B) 语句 C) 函数 D) 字符、C、1 2、C语言程序的三种基本结构是____ A、顺序结构,选择结构,循环结构 B、递归结构,循环结,转移结构 C、嵌套结构,递归结构,顺序结构 D、循环结构,转移结构,顺序结构、A、1 3、C语言规定,程序中各函数之间 A) 既允许直接递归调用也允许原创 2012-09-03 13:12:08 · 7568 阅读 · 1 评论 -
鱼还是熊掌:浅谈多进程多线程的选择
鱼还是熊掌:浅谈多进程多线程的选择关于多进程和多线程,教科书上最经典的一句话是“进程是资源分配的最小单位,线程是CPU调度的最小单位”,这句话应付考试基本上够了,但如果在工作中遇到类似的选择问题,那就没有这么简单了,选的不好,会让你深受其害。 经常在网络上看到有的XDJM问“多进程好还是多线程好?”、“Linux下用多进程还是多线程?”等等期望一劳永逸的问题,我只能说:没有最好,只有更原创 2012-09-03 12:24:28 · 205 阅读 · 0 评论 -
多进程与多线程的区别:
进程与线程的区别:通俗的解释一个系统运行着很多进程,可以比喻为一条马路上有很多马车不同的进程可以理解为不同的马车而同一辆马车可以有很多匹马来拉----这些马就是线程假设道路的宽度恰好可以通过一辆马车道路可以认为是临界资源那么马车成为分配资源的最小单位(进程)而同一个马车被很多匹马驱动(线程)----即最小的运行单位每辆马车马匹数>=1所以马匹数=1的时候进程原创 2012-09-03 12:28:10 · 441 阅读 · 0 评论 -
c++ 75道逻辑题(面试宝典)
【1】假设有一个池塘,里面有无穷多的水。现有2个空水壶,容积分别为5升和6升。问题是如何只用这2个水壶从池塘里取得3升的水。...14没有人有相同的宠物,抽相同牌子的香烟,喝相同的饮料...51.红房子在蓝房子的右边,白房子的左边(不一定紧邻)...61/3.7A=(已知其中一个是女孩)=)(女女)(男女)(女男)...77点x分:(7+x/60)/12原创 2012-09-03 12:39:29 · 98594 阅读 · 0 评论 -
C++ 面向对象的笔记总结
关于 C++ 面向对象的笔记总结//类的定义class 类名>{private: ...;protected: ...;public: ...;}; 注意:成员变量不能在声明时初始化(但静态常成员函数可以);不要与JAVA的混淆 //成员函数的定义//先搞清楚声明与定义的区别,声明与初始化的区别返回类型> 类名原创 2012-09-07 22:46:03 · 524 阅读 · 0 评论 -
libxl创建实例
/*函数名称:CopySheet()创建日期:20170622 功能描述:复制一个Book中的sheet内容到另一个Book中的sheet表中,格式内容不改变参数描述:srcPath:源Book路径 dstPath:目标Book路径 savePath:保存路径*/void CLibxlTestDlg ::CopySheet(CString srcPath, CString原创 2017-07-04 09:38:40 · 2413 阅读 · 0 评论