
C++
文章平均质量分 70
zhuqinglu
这个作者很懒,什么都没留下…
展开
-
动态创建二维vector数组
转自:http://hi.baidu.com/studyarea/blog/item/57d1cb6e9570b6d881cb4adf.html二维vectorvector > ivec(m ,vector(n)); //m*n的二维vector动态创建m*n的二维vector方法一:vector > ivec;ivec.resize(m);for(int i=0;i方法二:vector转载 2007-09-28 15:09:00 · 31562 阅读 · 0 评论 -
使用CtoolTipCtrl
使用CtoolTipCtrl 导读:本文适用于相对静止的控件,比如按钮,不适用于向树型控件这样的位置不固定的控件(因为树型控件经常被折叠和展开) CtoolTipCtrl封装了一个工具提示的控件,可弹出一个单行的小窗口来显示一些描述信息,大多时候它是隐藏的,除非用户将光标移到要显示提示的工具上面,并且停留大概半秒的时间它才显示,当单击鼠标或者移走光标的时候这个提示窗口就会消失原创 2007-11-20 15:24:00 · 6696 阅读 · 2 评论 -
在CTreeView中给CtreeCtrl增加提示(tip)的功能(图解+源码)
在CTreeView中给CtreeCtrl增加提示(tip)的功能(图解+源码)原创作者:boqing原文地址:http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=1895519源码下载地址:http://download.youkuaiyun.com/source/290421 图形界面如下:1 新建工程转载 2007-11-20 23:10:00 · 5597 阅读 · 1 评论 -
数据库的应用——直接从内存中读取osg节点
数据库的应用——直接从内存中读取osg节点目的:要从数据库中读取节点数据到osg。 一开始的方法是这样的,每当我要添加一个数据库中的节点数据时,首先把它读取到内存中,然后写入一个文件,最后再次从文件中用osg的osgDB::readNodeFile()读取,这个方法是可行的,但是却很糟糕。我的初衷是不要经过文件转换。 现在问题解决了,多亏了osg::ReaderWriter提供原创 2007-12-03 16:41:00 · 3845 阅读 · 1 评论 -
对比C++和Java
对比C++和Java“作为一名C++程序员,我们早已掌握了面向对象程序设计的基本概念,而且Java的语法无疑是非常熟悉的。事实上,Java本来就是从C++衍生出来的。” 然而,C++和Java之间仍存在一些显著的差异。可以这样说,这些差异代表着技术的极大进步。一旦我们弄清楚了这些差异,就会理解为什么说Java是一种优秀的程序设计语言。本附录将引导大家认识用于区分Java和C++的一些转载 2008-02-19 17:34:00 · 930 阅读 · 0 评论 -
一个简单的osg控件开发例子
一个简单的osg控件开发例子作者:boqing经常需要在对话框上添加osg的浏览功能,一开始是仿照osgviewerMFC的例子去写,可是每次在对话框上添加此功能的时候都要重复复制很多处代码,且位置和大小控制也不是很方便。因此写了个简单的OSG Active控件解决此问题。 开发工具:vc2005OSG版本:osg2.2 具体开发步骤:一 建立Active工程项目类原创 2008-03-10 10:47:00 · 7942 阅读 · 8 评论 -
添加二进制文件到数据库示例
添加二进制文件到数据库示例第一步:读取文件到类成员变量m_pFileBufferBOOL CDLGAddModel::Load3DDataFile(CString fileName){ CFile file; if( !file.Open( fileName, CFile::modeRead) ) return FALSE; m_file原创 2008-03-10 11:14:00 · 1426 阅读 · 0 评论 -
生成osg图像并保存
生成osg图像并保存#include "osgViewer/Viewer"#include "osgDB/WriteFile"#include "osgDB/ReadFile"#include "osgGA/TrackballManipulator"#include void main(){ ///////////////////////////////原创 2008-03-10 11:17:00 · 7608 阅读 · 6 评论 -
vi的编码风格
vi的编码风格 在Linux下,比较流行的“行业”风格有KR的编码风格、gnu的编码风格、linux内核的编码风格(基于KR的,缩进是8个空格)等,它们都可以通过indent命令格式化,对应的选项分别是- kr,-gnu, -i8。下面演示用indent把代码格式化成上面的三种风格。 Quote:原创 2008-03-21 15:19:00 · 2537 阅读 · 0 评论 -
C++ 程序文档生成器介绍(doxygen)
C++ 程序文档生成器介绍(doxygen) 沐枫网志1. 模块定义(单独显示一页)/* * @defgroup 模块名 模块的说明文字 * @{ */ ... 定义的内容 ... /** @} */ // 模块结尾 2. 分组定义(在一页内分组显示)/* * @name 分组说明文字 * @{ */ ... 定义的内容 ..转载 2008-03-29 23:33:00 · 1522 阅读 · 0 评论 -
CListCtrl编程示例(设计MyView)
CListCtrl编程示例(设计MyView)目标:l 实现大图标,小图标,详细列表,列表视图的实现l 当双击ModelBar时,若为目录,则在MyView中列出其子结点;若为模型,列出其所在目录的结点l 在Myview下若双击目录,进入下一级,若双击模型,则提供预览l 提供向上,后退,前进功能 第一步:设原创 2008-04-01 10:31:00 · 1935 阅读 · 1 评论 -
C++操作符重载手册
一、重载规则I.可以重载的操作符 + - * / % ^ & | ~转载 2008-04-21 15:37:00 · 1348 阅读 · 0 评论 -
向MFC应用程序添加控制台窗口
向MFC应用程序添加控制台窗口简介 如果你曾经写过MFC应用程序,也许你忽略了控制台窗口。熟悉了控制台窗口的人会认为它是如此的便捷,我就是一个,认为printf或者cout是最优秀的调试函数,可以在不打开任务管理器的情况下在控制台中仅仅按下CTRL+C来结束不响应的程序。不幸的是,MFC应用程序默认情况下并不支持控制台。但是在你的应用程序加入一小段代码后,然后改变连接选项你就可以解决翻译 2008-05-17 16:24:00 · 7940 阅读 · 5 评论 -
变量的存储类型
程序占用内存分为:⑴程序区:存放程序的可执行代码。⑵静态存储区:存放程序中定义的静态变量。⑶动态存储区:存放程序中定义的动态变量。动态变量:当程序执行到动态变量的作用域的开始处时,才为它分配内存;而执行到它的作用域的结束处时,收回为它分配的内存。该变量的生命期仅在变量的作用域内。静态变量:在程序开始执行时就转载 2008-05-18 16:46:00 · 3280 阅读 · 0 评论 -
文档与串行化笔记—孙鑫(转)
文档与串行化笔记—孙鑫(转)转自:http://blog.youkuaiyun.com/peng6662001/archive/2006/03/29/642366.aspx(稍作修改) 串行化概念把文件在磁盘上保存下来 叫做串行化 使用CArchive:写入: CFile file("1.txt",CFile::modeCreate | CFile::modeWrite); C转载 2007-11-17 09:38:00 · 1469 阅读 · 0 评论 -
ADO防止内存泄露和减少内存开销的方法
ADO防止内存泄露和减少内存开销的方法作者:boqing(自己琢磨的,如果您发现不当之处,望不吝赐教) 导读:经常碰到在一个工程中的几个类中都需要调用数据库,因此可考虑编写一个数据库管理类来实现基本的问题,防止内存泄露与不必要的内存开销的几个需要注意的事情:1)CreateInstance后不要忘记Release;2)Open后不要忘记Close;3)尽量保证数据管理类只有一个实例原创 2007-11-15 10:52:00 · 3335 阅读 · 0 评论 -
关于MFC下检查和消除内存泄露的技巧
关于MFC下检查和消除内存泄露的技巧作者:freepublic摘要本文分析了Windows环境使用MFC调试内存泄露的技术,介绍了在Windows环境下用VC++查找,定位和消除内存泄露的方法技巧。关键词:VC++;CRT 调试堆函数;试探法。编译环境 VC++6.0技术原理检测内存泄漏的主要工具是调试器和 CRT 调试堆函数。若要启用调试堆函数,请在程序中包括以下语句: #define转载 2007-11-15 09:43:00 · 972 阅读 · 0 评论 -
使用(C++库)istringstream输入(格式化)
转自:http://dev.youkuaiyun.com/article/77/77033.shtmhttp://www.chinaitpower.com/A/2002-04-21/20488.html C++引入了ostringstream、istringstream、stringstream这三个类,要使用他们创建对象就必须包含sstream.h头文件。 istrin原创 2007-09-28 16:11:00 · 17164 阅读 · 0 评论 -
C++的iostream标准库介绍
C++的iostream标准库介绍 作者:管宁 C++的iostream标准库介绍 0 为什么需要iostream 1 iostream: istream 和 ostream 2 fstream: ifstream 和 ofstream 3 strstream: ostrstream 和转载 2007-10-19 09:43:00 · 2170 阅读 · 0 评论 -
private public protected
private:其修饰的成员或方法,在其定义的类中的方法中可以引用,另外,在该类所定义的Main()函数中也可以引用,但该类及基派生类的对象均不可引用 protected:其修饰的成员或方法,在其定义的类或其派生类中的方法中可以引用,另外,在该类或其派生类所定义的Main()函数中也可以引用,但该类及基派生类的对象均不可引用 public:其修饰的成员或方法,在该类及基派生类的对象原创 2007-10-20 14:02:00 · 711 阅读 · 0 评论 -
CString ,BSTR ,LPCTSTR之间关系和区别
CString是一个动态TCHAR数组,BSTR是一种专有格式的字符串(需要用系统提供的函数来操纵,LPCTSTR只是一个常量的TCHAR指针。CString 是一个完全独立的类,动态的TCHAR数组,封装了 + 等操作符和字符串操作方法。typedef OLECHAR FAR* BSTR;typedef const char * LPCTSTR;vc++中各种字符串的表示法首先char* 是转载 2007-11-01 09:20:00 · 782 阅读 · 0 评论 -
vs2005+vc8+ado
导入ADO接口位置:stdafx.h #import "C:Program FilesCommon FilesSystemadomsado15.dll" no_namespace rename("EOF","adoEOF") rename("BOF","adoBOF")定义位置:class Ctest2App _ConnectionPtr m_pCo原创 2007-11-02 13:43:00 · 924 阅读 · 0 评论 -
extern "c"
.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重载,C++对全局函数的处理方式与C有明显的不同转载 2007-11-04 10:50:00 · 635 阅读 · 0 评论 -
VC++常用数据类型及其操作详解
一. VC常用数据类型列表二. 常用数据类型转化2.1数学类型变量与字符串相互转换2.2 CString及string,char *与其他数据类型的转换和操作●CString,string,char*的综合比较●数学类型与CString相互转化●CString与char*相互转换举例●CString 与 BSTR 型转转载 2007-11-04 16:17:00 · 808 阅读 · 0 评论 -
滚动视图和网页视图
滚动视图和网页视图滚动视图l 设置屏幕大小在函数OnInitialUpdate()中设置sizeTotall 显示图像代码void CMyScrollView::OnDraw(CDC* pDC){ CDocument* pDoc = GetDocument(); // TODO: add draw code here原创 2007-11-07 16:37:00 · 814 阅读 · 0 评论 -
数据库+树形控件+视图分割——备忘
数据库+树形控件+视图分割——备忘关于数据库 l stdafx.h添加:#import "C:/Program Files/Common Files/System/ado/msado15.dll" rename_namespace("ADOBS") rename("EOF","adoEOF") rename("BOF","adoBOF")using namesp原创 2007-11-06 16:27:00 · 1243 阅读 · 0 评论 -
Document与View之间的相互作用
Document与View之间的相互作用它们之间的同步(交互)主要是通过3个函数: l CView类的GetDocument()成员函数得到文档类l CDocument类的UpdateAllViews()作用:文档类发生变化通知视图类,若在视图类中调用可,他通知View类的OnUpdate()函数GetDocument()->UpdateAl原创 2007-11-06 20:22:00 · 940 阅读 · 0 评论 -
学会使用SafeArray
学会使用SafeArray学会使用SafeArray也是很重要的,因为在ADO编程中经常要用。它的主要目的是用于automation中的数组型参数的传递。因为在网络环境中,数组是不能直接传递的,而必须将其包装成SafeArray。实质上SafeArray就是将通常的数组增加一个描述符,说明其维数、长度、边界、元素类型等信息。SafeArray也并不单独使用,而是将其再包装到VARIANT类型的原创 2007-11-09 10:19:00 · 802 阅读 · 0 评论 -
使用ADO实现vc中二进制文件数据的存取(以图像在数据库中的存取为例)
使用ADO实现vc中二进制文件数据的存取(以图像在数据库中的存取为例)说明:感谢vcer在http://vcer.net/1170061658703.html提供的源码。欢迎去他的网站:http://vcer.net源码下载:http://vcer.net/download.jsp?id=1047343491330 实现方法简述关键代码如下: 1、保转载 2007-11-09 19:57:00 · 3194 阅读 · 0 评论 -
vc++.net清理多余文件
vc的程序每次编译后生成一堆文件,而这些文件在下一次编译后又可以自动生成,为了方便保存和版本控制,建议清理一下,附带一个小批处理程序dir>log.txtdel *.ncb/s>>log.txtdel *.rsp/s>>log.txtdel *.pgc/s>>log.txtdel *.pgd/s>>log.txtdel *.tmp/s>>log.txtdel *.ilk/s>>log.t原创 2007-11-14 22:56:00 · 735 阅读 · 0 评论 -
delphi调用vc写的dll的方法
1. 在VC中新建一个 DLL 工程。写如代码,如:extern "C"{ _declspec(dllexport) int getPPLength(); _declspec(dllexport) int npn(int m, int n);}int getPPLength(){ return 5* 12;}int npn(int m, int n) { int sum;原创 2008-08-22 20:07:00 · 4321 阅读 · 0 评论