开发界
首页 移动开发 在线交易 IT笔记 网络技术 操作系统 企业架构 数据库 考试认证 IT培训 开源软件 数据存储 行业资讯
大家都在看:java   开发   C#   oracle   mysql   android   web开发   学习   sqlserver   linux   asp   php   ajax   javascript   css   html
C++这个词在中国大陆的程序员圈子中通常被读做“C加加”,而西方的程序员通常读做“C plus plus”,“CPP”。 它是一种使用非常广泛的计算机编程语言。

·理解C++ dynamic_cast C++ [2013-12-31]
  在面向对象程序设计中,有时我们需要在运行时查询一个对象是否能作为某种多态类型使用。与Java的instanceof,以及C#的as、is运算符类似,C++提供了dynamic_cast函数用于动态转型。相比C风格的强制类型转换和C++reinterpret_cast,dynamic_cast提供了类型安全检查,是一种基于能力查询(CapabilityQuery)的转换,所以在多态类型间进行转换更提倡采用dynamic_cast。本文主要介绍dynamic_cast的意义,用法和注意事项。    ..
开发界 发表于:C++
  在Windows系统中,我们经常用Ping.exe来测试网络的连通性。      Ping的实现过程很简单,该命令将引发IP层发送一个简单的IP包,一般是32字节。而目的方收到这个包后,将源地址和目的地址变换一下,重新发送这个包即可,当然还要加一些超时机制。      其实,我们也可用C++BuilderNetMaster中的NMEcho控件来实现网络连接检测功能。      首先定义以下控件:      三个Edit控件:一个用于接收远程主..
开发界 发表于:C++
很久很久以前,那还是大一下,苦逼的学习了openGL,也算踏进了图形学领域吧,如今在中科院的工作也和图形学的相关,一切的偶然加上本人也喜欢图形学的缘故,在这条路走的还那么算回事,基本的知识差不多还是掌握了,也对openGL比较熟悉。可是以后的工作却和图形学一点都不搭边,本来也确实想放弃在这个领域浪费时间了,可是不知道为何又舍不得,所以,心里也暗自说,不管怎样,还是坚持一点点的学习图形学吧,正如乔布斯所说..
开发界 发表于:C++
·MFC文件夹对话框 C++ [2012-11-28]
voidCPrintPortDlg::OnBnClickedMfcbutton1() { CStringsFolderPath; BROWSEINFObi; charBuffer[MAX_PATH]; bi.hwndOwner=NULL; bi.pidlRoot=NULL; bi.pszDisplayName=Buffer; bi.lpszTitle="変換元フォームフォルダの選択"; bi.ulFlags=BIF_RETURNONLYFSDIRS; bi.lpfn=NULL; bi.iImage=IDR_MAINFRAME; LPITEMIDLISTpIDList=SHBrowseForFolder(&bi); if(pIDList){ SHGetPathFromI..
开发界 发表于:C++
·获取粘贴板内容 C++ [2012-11-20]
C++代码 //2GetClipboardData CStringstrClipboard; if(OpenClipboard()) { HANDLEhData=GetClipboardData(CF_TEXT); CHAR*buffer=(CHAR*)GlobalLock(hData); strClipboard=buffer; GlobalUnlock(hData); CloseClipboard(); }
开发界 发表于:C++
C++类对象内存模型是一个比较抓狂的问题,主要是C++特性太多了,所以必须建立一个清晰的分析层次。一般而言,讲到C++对象,都比较容易反应到以下这个图表: 这篇文章,就以这个表格作为分析和行文的策略的纵向指导;横向上,兼以考虑无继承、单继承、多重继承及虚拟继承四方面情况,这样一来,思维层次应该算是比较清晰了。 1、C++类数据成员的内存模型 1.1无继承情况 实验最能说明问题了..
开发界 发表于:C++
·win32基础实例 C++ [2012-10-09]
#include"stdafx.h" #include"game01.h" #defineMAX_LOADSTRING100 //GlobalVariables: HINSTANCEhInst;//currentinstance TCHARszTitle[MAX_LOADSTRING];//Thetitlebartext TCHARszWindowClass[MAX_LOADSTRING];//themainwindowclassname //函数的声明 ATOMMyRegisterClass(HINSTANCEhInstance); BOOLInitInstance(HINSTANCE,int); LRESULTCALLBACKWndProc(HWND,UINT,WPARAM..
开发界 发表于:C++
(一)项目概述: C++服务器是之前编写好的,有对应的C++客户端。因此,服务器的C++代码不能改变。主要解决的问题是: 1.如何用java类来还原服务器中的结构体 2.数据之间的转换 3.socket通信数据统一用字节数组。 (二)首先看一下服务器的代码:(360安全卫士竟然说我的代码是木马...好吧,这个服务器不就是能联网,能获取本地数据么?确实有点像木马,但绝对不是!) /*主要功能是获得系统硬盘符号及硬盘下的目录和..
开发界 发表于:C++
1.指向const对象的指针 我们可以通过指针来修改其所指对象的值,但如果指针指向的是const对象,则不允许使用指针来改变其所指的const值。C++要求指向const对象的指针也是const类型。 constdouble*pd;//可以指向一个constdouble类型。 这里的const限定的是pd所指的对象,而不是pd。这里的pd是可以重新指向另外的一个地址的,但不允许使用pd来改变所指向对象的值。 把一个const对象的地址赋给非const对象的..
开发界 发表于:C++
c++标准不支持模板函数指针,比如: [cpp]viewplaincopyprint?template<typenameType> typedefint(*Func)(constType&type);//提示编译错误 template<typenameType> typedefint(*Func)(constType&type);//提示编译错误不过我们可以这样写: [cpp]viewplaincopyprint?template<typenameCOL_TYPE,typenameRESULT_TYPE> classCAggCalculator{ private: typedefbool(CAggC..
开发界 发表于:C++
题目:求解一元二次方程:ax²+bx+c=0的解,其中a=1,b=-3,c=2. 分析:大家都知道一元二次方程的解有三种情况,即考虑Δ=(b²-4ac)的算术平方根,当Δ>0时,方程有两个不相等的实根x1=(-b+sqrt(d))/(2a);x2=(-b-sqrt(d))/(2a);当Δ=0时,方程有两个相等的实根x1=x2=(-b)/(2a);当Δ<0时,方程有两个不相等的虚根x1=(-b)/(2a),x2=sqrt(-d)/(2a)。 以上是我们解数学题的思路,可..
开发界 发表于:C++
1,char可以用一下的方法初始化 constchar*char1="123"; constchar*char2="456"; constchar*char3=""; 2,constchar*它转化为string的方法 strings1(char1); 3,string它转化为constchar*的方法 strings1="hellow"; constchar*char1=s1.c_str(); 4,c++切割字符串 stringtext="..
开发界 发表于:C++
C++中的多线程编程技术,C++本身并没有提供任何多线程机制,但是在windows下,我们可以调用SDKwin32api来编写多线程的程序: 创建线程的函数 HANDLECreateThread( LPSECURITY_ATTRIBUTESlpThreadAttributes,//SD SIZE_TdwStackSize,//initialstacksize LPTHREAD_START_ROUTINElpStartAddress,//threadfunction LPVOIDlpParameter,//threadargument DWORDdwCreationFlags,//creationop..
开发界 发表于:C++
·获取显卡内存 C++ [2012-09-28]
#include<ddraw.h> #pragmacomment(lib,"guids.lib") voidCGetDisplayMemDlg::OnButton1() { //TODO:Addyourcontrolnotificationhandlercodehere LPDIRECTDRAW2lpdd; HRESULTddrval; CoInitialize(NULL); ddrval=CoCreateInstance(CLSID_DirectDraw, NULL,CLSCTX_ALL,IID_IDirectDraw2,(void**)&lpdd); if(!FAILED(ddrval)) { ddrval=IDirectDraw2_Initializ..
开发界 发表于:C++
·C++STLstring C++ [2012-09-28]
一、构造函数 1)、strings;//创建一个空的字符串,相当于strings(""); 2)、strings1("hehe");//<=>charcharArray[]="hehe";strings1(charArray);用字符数组初始化 3)、strings2("hehe",2);//使用“hehe”的前两个字符来初始化S2 4)、strings3(s2);//直接使用string对象s2来初始一个新的对象,调用复制构造函数 5)、strings4(s1,1,2);//格式是stri..
开发界 发表于:C++
thetemplatehasparameter,itcancontainstypeparamteranditcanalsohavenontypeparamter,inthefollowingcode. Cpp代码 template<classType,intsize> classBuffer; template<classType,intsize> classBuffer; theclasstemplatebufferhastwoparamter,oneisthenon-determinicparameter,whichisType,andonenontype(whichmeansthetypeitselfisboundandknown,whichremainsunknownisonlythevla..
开发界 发表于:C++
Therearethreekindsoffriendsdeclarationthatmayappearwithinaclasstemplate. Anontemplatefriendclassorfriendfunction. Cpp代码 /**-Anontemplatefriendclassorfriendfunction. *Anontemplatefriendclassorfriendfunction.Inthefollowingexample,thefunctionfoo(),thememberfunctionbar() *thememberfunctionbar()andtheclassfoobararefriendstoallinstantiationoftheclasstepmlateQueueItem. ..
开发界 发表于:C++
·C++的二度学习 C++ [2012-09-24]
  再次拿起C++的课本这种感觉也很不错,毕竟比起第一次的感觉来已经不再陌生,虽然开始时有抵触,但随着深入的学习,理解的更加透彻,突然觉得第一次没过也是一种幸运,深刻理解了米老师说的学习一次hold不住,要来两三遍才可以,下面来总结一下C++的学习      学习相同总结不同      学习过VB我们都知道了三种结构呀,数据类型呀,这些都大同小异在这就说说不同吧!构造数据类型:         我觉得每一..
开发界 发表于:C++
//strcmp #include<stdio.h> #include<string.h> intStrcmp(constchar*src,constchar*dest) { intret=0; while(0==(ret=*(unsignedchar*)src-*(unsignedchar*)dest)&& '\0'!=*dest){//字符相同且没到末尾则继续 ++src; ++dest; } if(ret<0) ret=-1; elseif(ret>0) ret=1; return(ret); } intmain(intargc,char**argv) { charstr1[]..
开发界 发表于:C++
用下面的方法模拟,最开始开50000的链表跑了187ms,真是相当的惭愧呀。后改用35000的链表跑了109ms。最后改用c的输入输出(也就是下面放出的代码)跑了78ms,其实自己写链表会跑的更快。不过个人比较懒,加上已经0点了,78ms就78ms吧==~~~ 顺道一提,我这个代码加上空行什么的共737B,不过statistic第一页大多都是10000+B的代码,这神马情况==|| 呃,刚才在百度知道,看到一个这个题的解题代码,感觉方法挺好的 ..
开发界 发表于:C++
前言:学C语言的时候,我就想把C语言的库函数的函数体找出来,如果知道了函数的定义(*.h里只是一个函数原型),那么老谭那本书上有的语法就不用讲了,自己还能深入理解!于是,我准备开这个系列,把自己搜集的库函数定义记下来,唯一的要求是与微软实现的库函数功能一致,我不会乱写的。每篇之后,如果自己有什么看法会写在后面,各位有何高见也欢迎评论。我发现,源码中的函数体里大多只需用三个东西:指针,if语句,while..
开发界 发表于:C++
Youcanoverloadthesubscriptoperator,atypicalscenariothatyoumayusethesubscriptoroverloadoperatoriswhenyoudesigntheStringclass,whereyouwanttheusertoaccesstheelementatithindext,whichisachartype. However,whatisthereturntypeofthesubscriptoroperator?forconstobject,itshouldreturnaconstcharreferenceorwesimplereturnacharreferenceregardless? hereistheexample,belowisthedefinitionofMySt..
开发界 发表于:C++
1.C++对象的生存期: 静态生存期:在文件作用域范围内声明或者在函数体里使用static声明的对象具有静态生存期 2.类的静态成员: 静态数据成员:采用static声明的静态成员,静态成员在每个类中只有一个拷贝,由该类的所有对象共同拥有和维护,从而可以实现不同对象之间的数据共享。 访问方法:类名::标识符 静态成员函数:可以直接访问该类的静态数据和静态函数成员。 3.类的友..
开发界 发表于:C++
·Windows API 功能详解 C++ [2012-09-20]
WindowsAPI功能详解 1.API之网络函数 WNetAddConnection创建同一个网络资源的永久性连接 WNetAddConnection2创建同一个网络资源的连接 WNetAddConnection3创建同一个网络资源的连接 WNetCancelConnection结束一个网络连接 WNetCancelConnection2结束一个网络连接 WNetCloseEnum结束一次枚举操作 WNetConnectionDialog启动一个标准对话框,以便建立同网络资源的连接 WNetDisconnectDialog启..
开发界 发表于:C++
概念区分 在c中,是没有string类型的数据的。但是c语言里有<string.h>这个头文件。容易让人误认为c中有string类型的数据。 区分string的含义: 1)(在c和c++中)如果string表示字符串型数据,那么c中是有字符串类型数据的(用char[]或者char*来声明定义)。但是没有string类型数据。而c中的<string.h>这个头文件里声明的函数原型也全是针对char数组的种种操作,如strcmp,strcpy,strcat等。 2)(..
开发界 发表于:C++
/*题意就是至少加多少条边,使得任意两点间至少有两条不同的路。 求双连通分量。 然后统计叶子个数,即入度为1的点的个数,然后ans=(num+1)/2. 在求双连通分量的过程中low值相等的是在同一个分量里。不需要用stack来进行保存。 */ #include<stdio.h> #include<cstring> #include<iostream> usingnamespacestd; constintmaxm=10001; constintmaxn=5001; structedge { intto,next..
开发界 发表于:C++
首先看两个关于const的程序,并且猜测输出的结果是什么? [cpp]viewplaincopyprint?#include<iostream> usingnamespacestd; voidmain() { constinta=2; int*b=(int*)&a; *b=3; cout<<a<<endl; cout<<(*b)<<endl; } #include<iostream> usingnamespacestd; voidmain() { constinta=2; int*b=(int*)&a; *b=3; cout<<a&l..
开发界 发表于:C++
Intheprevieouspost,c++specialmemberfunctions-constandvolatilememberswehavediscussedsomespeicalmembers,suchastheconstantmembersandthevolatilemembers,nowlet'sseeaspecialmembers-whichiscalledthemutablemembers. whenwearetalkingaboutthemutablemembers,wehavetotalkaobuttheconstmembers,whenconstobjectcallstheconstmembers,oneconstraintimposedbytheconstmemberclassesisthattheydoesnota..
开发界 发表于:C++
统一资源管理: 在win32编程中,为方便项目中的资源统一管理,提供了一个格式统一的资源文件,对各种资源进行管理。它的扩展名是.rc,在程序编译时它会被资源编译器编译生成一个.res的二进制文件。 rc文件的语法: 1.注释:注释方式和C语言相通,单行注释用//符号,多行注释用/*...*/符号。 2.预处理命令:预处理指令包括一些头文件的引用(使用#include,也同C语言)。 3.编译指令:预定义(#defi..
开发界 发表于:C++
·汉诺塔C++ C++ [2012-09-15]
intc=0; voidmove(charx,intn,charz){ cout<<++c<<","<<"第"<<n<<"个,从"<<x<<",移动到"<<z<<endl; } voidHanoi(intn,charA,charB,charC){ //当n=1时,直接移动到C if(n==1){ move(A,1,C); }else{ //将前n-1个,从A通过C,移动到B Hanoi(n-1,A,C,B); //将最后一个移动到C move(A,n,C); //将前n-1..
开发界 发表于:C++
今日IT新闻 最新代码分享
网络·架构·开源 更多
数据库技术 更多
一套数据,多种引擎续-..
最近主要在研究大数典型应用adhoc
开发界 发表于:[MySQL]
·mysql常见优化  [MySQL]
·MongoDB启动失败  [MySQL]
·sqlserver2005 使用  [SQLServer]
·sqlserver2005安装  [SQLServer]
·mysql for window 64安装  [SQLServer]
·oracle 查询时间  [SQLServer]
移动开发 更多
学编程一定要上大学?..
其中一个重要原因是,速成的在线课程和培训班正在..
开发界 发表于:[开发问答]
·byte构造数据总结 [Android平台]
·免费天气预报接口 [Android平台]
·(原创) Elastix& Asteris.. [Android平台]
·JPA主键策略 [Android平台]
·IDE [Android平台]
·Spring Security框架 [Android平台]
·Your Uninstaller [Android平台]
·ArrayExpand [Android平台]
·录制参数为空 [Android平台]
·Xcode警告大全 [IOS开发]
·Android Lint简介 [IOS开发]

关于开发界 | 合作伙伴 | 联系我们 | 友情链接 | 版权声明 | 网站制作 | 网站地图 | 加入收藏 | 设为首页

Copyright@2012-2016 开发界 京ICP备12027873号