★★★★★关于公共变量如何定义的问题,高人进来指点一下,不胜感激★★★★★

white_dove3000 2008-11-11 10:41:25
环境VC6.0

问题描述:

我新建了一个ATL COM Wizard工程,类型为Service[exe],在工程中新建了一个ATL object(New ATL object),并在此对象中添加了一个方法long GetValue(long key)方法,方法的功能是通过传入的键,计算一个结果。此方法供客户段的VB程序调用,服务程序和客户端的调用程序均已实现,没有问题。

需要解决的问题是:我想实现一种缓存机制,就是假如传入的参数如果已经调用过,则把计算机结果保存起来,每次执行GetValue的时候,首先查询key是否已经被调用过,若调用过,则直接从缓存中取值,若没调用过,则进行计算。问题是,假如我用一个哈希表实现缓存,这个哈希表对象在何处定义啊?

...全文
45 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
white_dove3000 2008-11-11
  • 打赏
  • 举报
回复
楼上的兄台,我按你说的,新加了一个头文件,num.h,在内定义了一个变量num,暂时存放第一次运行结果,编译没有问题,但运行时,每次运行时num的值都是0,并没有把上次运行的结果保存下来?不知是何原因??

难道是这个服务程序是每次调用才启动,调用结束后服务就会停止了吗?对于服务程序我只是编译的时候注册了一下?如何让它只启动一次,一致保持启动状态啊??
zhucde 2008-11-11
  • 打赏
  • 举报
回复
在一个公共头文件里就可以了

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧