Welcome 微信登录

首页 / 软件开发 / C++

ArcEngine鹰眼的实现

ArcEngine鹰眼的实现

ArcEngine鹰眼的实现2009-11-10 cnblogs miao大家都用过百度地图或者google地图吧,在它们主地图的右下角,有个小地图窗口,这就是鹰眼窗口。用鼠标拖动鹰眼里的小窗口,则主地图便移动到相应的位置。下面就介绍鹰眼的实现。鹰眼和主地图的互动,主要体现在两个方面:一是主地图的地图改变了,则鹰眼里的矩形框要移动到对应的位置,以指示当前地图在整个地图中的位置;二是鹰眼的矩形框移动了,则主地图中显示的地图要移动到相应的位置。ArcEngin...
细谈C++多态性的“动”与“静”

细谈C++多态性的“动”与“静”

细谈C++多态性的“动”与“静”2011-04-04在我们讨论多态的时候,先看看什么是硬编码和软编码:硬编码就是把代码写死了,导致弹性不足,降低了可扩展性,例如在代码里的if……else……;switch……case……这些代码通常都属于硬编码,项目中的这些代码多了,就相当于说明这个代码的灵活性、扩展性、弹性等等的少了。所以,我们要尽量使用软编码...
一种可用于系统动态显示关于信息的方法

一种可用于系统动态显示关于信息的方法

一种可用于系统动态显示关于信息的方法2009-11-11介绍一般的系统帮助文件在显示关于帮助信息的时候大部分采用的方法是静态的形式将要显示的内容显示到界面上,由于这次担任项目开发,我总觉得那样太单调了,于是,在各个网站搜索后发现了一个很好的控件类(字模显示控件类),于是我进行扩充完成了一些动态显示的功能,完成后的各种要显示的帮助信息能够象放映电影一样的进行动态显示,效果蛮好的,现将制作过程合代码及演示效果写出来,希望对这个方面有研究或者寻求好方法的人有帮助...
突破select的FD_SETSIZE限制

突破select的FD_SETSIZE限制

突破select的FD_SETSIZE限制2011-04-04Kevin Lynx前言:在很多比较各种网络模型的文章中,但凡提到select模型时,都会说 select受限于轮询的套接字数量,这个数量也就是系统头文件中定义的FD_SETSIZE值(例 如64)。但事实上这个算不上真的限制。C语言的偏方:在C语言的世界里 存在一个关于结构体的偏门技巧,例如:typedef struct _str_type{ int _len; char _s[1];} ...
用VC 6.0实现串行通信的三种方法

用VC 6.0实现串行通信的三种方法

用VC 6.0实现串行通信的三种方法2009-11-11王颖摘要:本文介绍了在Windows平台下串行通信的实现机制,讨论了根据不同的条件用Visual C++ 设计串行通信程序的三种方法,并结合实际,实现对温度数据的接收监控。---- 在实验室和工业应用中,串口是常用的计算机与外部串行设备之间的数据传输通道,由于串行通信方便易行,所以应用广泛。依据不同的条件实现对串口的灵活编程控制是我们所需要的。---- 在光学镜片镀膜工艺中,用单片机进行多路温度数据采...
我做的一个C++用的Serialization库(含部分源码)

我做的一个C++用的Serialization库(含部分源码)

我做的一个C++用的Serialization库(含部分源码)2011-04-04陈梓瀚众所周知,boost里面有一个Serialization。不过我这个跟boost的有本质上的差别。boost的Serialization是通过重载操作符将一个对象与一个流进行读写,而我则通过记录类的成员变量来自动产生相应的读写动作。不过我的Serialization库有两个缺点,就是效率不是特别高,因为我产生的是可以与XML进行互相转换的通用对象。虽然这并不是必需的,只...
用WinInet开发Internet客户端应用指南(二)

用WinInet开发Internet客户端应用指南(二)

用WinInet开发Internet客户端应用指南(二)2009-11-11二、实现步骤大家知道,每个Internet客户端程序都伴随有一定的目的行为,如读文件、写文件、删除文件等等。客户端的程序要实现这些行为的先决条件是建立Internet连接。然后再根据不同的目的进行具体的操作。为了方便起见,下面这这些张表格针对不同的应用行为列出了所需要的具体操作。其中列出了一般的Internet URL (FTP、或者 HTTP)客户端行为要实现某个目标所必须使用的...
数据库在C++程序中使用方法

数据库在C++程序中使用方法

数据库在C++程序中使用方法2011-04-04在本教程中,我假设大家都知道如何使用C++的类进行工作,因为我所有的数据结构,要立足于他们。我遇到过关于数据结构的教程,但是很难找到一个使用OOP来编写的。因此,这其中将主要集中于用一个类来编写数据结构。栈在编写代码时,堆栈是最常用的数据结构。它的概念简单,编写也比较简单。有这么一个情况,桌子上有堆成一堆的5本书,你想增加一本。应该怎么做?只要把书放在顶端就可以了。如果你想从这堆书中取出第3本呢?你只要一本接...
用WinInet开发Internet客户端应用指南(一)

用WinInet开发Internet客户端应用指南(一)

用WinInet开发Internet客户端应用指南(一)2009-11-11一、概述一个Internet客户端程序的目的是通过Internet协议如:HTTP、FTP等来存取网络数据源(服务器)的信息。客户端程序可以访问服务器获得象天气预报,股票价格、重要新闻数据,甚至是与服务器交换信息。Internet客户端程序可以通过外部网络(Internet)或内部网络(一般为Intranet)访问服务器。为了开发Internet客户端程序。MFC类库提供了专门的 ...
简明分析C/C++内存分配的解决方案

简明分析C/C++内存分配的解决方案

简明分析C/C++内存分配的解决方案2011-04-04C/C++的内存分配(通过malloc或new)可能需要花费很多时。更糟糕的是,随 着时间的流逝,内存(memory)将形成碎片,所以一个应用程序的运行会越来越慢。当它 运行了很长时间和/或执行了很多的内存分配(释放)操作的时候。特别是,你经常申请 很小的一块内存,堆(heap)会变成碎片的。解决方案:你自己的内存池一个( 可能的)解决方法是内存池(Memory Pool)。在启动的时候,一个&ldq...
Windows区对象(Bands)的创建与定制

Windows区对象(Bands)的创建与定制

Windows区对象(Bands)的创建与定制2009-11-11 VC知识库 赵湘宁一、简介Windows的区(Bands)对象有三种:既浏览栏(Explorer Bar)区对象,工具栏(Tools Bands)区对象,和桌面区对象(Desk Bands)。浏览栏区对象浏览栏区对象简称浏览栏,它是从IE4.0引入的,它是邻近浏览器窗格的一个显示区域。实际上它是IE窗口中的一个子窗口,可以用它来显示信息及与用户交互。浏览栏即可以是以垂直方式定位在浏览器窗格...
十招编写更易维护的嵌入式代码

十招编写更易维护的嵌入式代码

十招编写更易维护的嵌入式代码2011-04-04 yeeyan 风中纸页应用程序开发的一个重要方面就是代码的维护,但也却是被更快的产品上市要求所忽 略。这对于某一些程序来说,也许并不严重。这是因为这类产品的生命周期很短,或者这 类产品一旦部署就再也不会动它了。然而,嵌入式软件的生命周期却往往长达数 年,这就意味着前期的一些失误会导致后期的大量损失。嵌入式软件就意味着有 较长的生命周期,在设计和实现的时候就一定要考虑维护的问题。下面的技巧虽然不能保 证完整,...
Windows中如何获取键盘和鼠标处于空闲状态的时间

Windows中如何获取键盘和鼠标处于空闲状态的时间

Windows中如何获取键盘和鼠标处于空闲状态的时间2009-11-11赵湘宁在编写程序的过程中,我遇到了这样的需求:在基于Windows 9x 或 Windows NT4.0 的程序中,要求确定键盘、鼠标处于空闲状态的时间。查询了有关资料文档以后,发现Windows 9x和Windows NT4.0 没有提供API或系统调用来实现这样的功能。但是,在Windows 2000中提供了一个新的函数:GetLastInputInfo(),这个函数使用结构 LA...
C++删除数组内重复的数据

C++删除数组内重复的数据

C++删除数组内重复的数据2011-04-04笔试时曾经遇到过的一道题,当时没有好的想法。今天无意中想起,于是把自己的一种解决方法记下来。1. main.cpp1./**2. * 问题描述:3. * 删除数组内重复的数据4. *5. * 一个解决方法:6. * 可以先将数组排序,然后再删除7. * 如一个已经排好序的整数数组:1, 1, 2, 2, 38. */9.10.#include <iostream>11.12.using std::c...
Windows中回收站(Recycle Bin)的存取方法

Windows中回收站(Recycle Bin)的存取方法

Windows中回收站(Recycle Bin)的存取方法2009-11-11赵湘宁问题:我想用CFile::Remove(或其它可行的方法)删除一个文件,但是只是想将它送到Recycle Bin里面,而不是永久性地删除它,这样我的用户就可以在必要的时候能恢复这个文件。我不通过编程能不能实现?如果必须编程,那如何在程序中存取Recycle Bin?解答:这个问题的答案是:外壳API函数——SHFileOperation,它定义在sh...
三维视图绘制与消隐技术

三维视图绘制与消隐技术

三维视图绘制与消隐技术2011-04-041. 问题的提出在一些数据库管理系统或办公自动化和统计类软件中,一般具有绘制三维视图的功能。使用时通常要求在给出的表格中输入绘图的数据及视角、比例尺等参数。这只适用于小批量的统计数据绘制统计三维视图。在地质、地貌、气象、水文、交通、林业等许多领域,需要描述的某一量通常具有空间分布特征,这种空间分布数据的数量一般十分庞大,当使用上述三维视图软件绘图时经常会遇到输数表格容纳不下的问题,而且按表格重新输入数据也容易出错和...
C++网络开发包ACE环境的配置与调试

C++网络开发包ACE环境的配置与调试

C++网络开发包ACE环境的配置与调试2010-01-09ACE是个很有用的开放源代码的C++网络编程开发包,利用它比直接用API更有利于代码的健壮性,可移植性,并相对简单。估计大家刚接触ACE时,都有一定难度,说不定就半途放弃了,这是我学ACE两天中的总结,基本上不成文,但我想研究到ACE的你一定会明白下文的意思。我的系统环境是:Win2k pro(sp4)、VC6.0 (sp5)过一阵,我的主页上要开论坛,并设VC专区,欢迎大家上去交流www.liuf...
<< 231 232 233 234 235 236 237 238 239 240 >>