想把算法和主程序分离,怎么做?

zhyuanbaron 2007-02-12 04:04:13
我现在想把算法和使用算法得部分分离,使得不需要更改应用部分得代码就能实现算法的更新,初步想有如下两个办法
1 在主程序某函数有输入Ain,输出Aout,在算法程序中有输入Bin,输出Bout,即为如下流程:
Aout->Bin->算法计算->Bout->Ain
2 把Ain和Aout都写到缓冲区中,然后让算法从缓冲区中调出数据包,计算后再更新缓冲区

问题是
1 不知道这样可行吗?还是有其他更好的办法?
2 如果可行,怎么让算法和使用部分用一个缓冲区,或者还有其他办法?

小弟菜鸟,请高人务必帮忙,弄明白了马上给分,问得有点乱,如果不是太清楚问题,可以下面跟帖说明,谢谢了
...全文
299 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
双杯献酒 2007-02-13
  • 打赏
  • 举报
回复
如果你的参数类型不能确定,
就用模板.
syy64 2007-02-13
  • 打赏
  • 举报
回复
那就做成DLL吧,在更新按钮里,动态装载该算法DLL。
seasol 2007-02-13
  • 打赏
  • 举报
回复
共用缓冲区可以这样:
DLL不仅封装算法,也封装缓冲区的分配与释放功能。
zhyuanbaron 2007-02-13
  • 打赏
  • 举报
回复
小弟先谢过各位,尤其是syy64(太平洋)

现在需要算法可以从其他地方下载,也就是更新越简单越好,那按照syy64(太平洋)说的方法,怎么能够方便的更新?如果做成函数的形式,是不是也要把函数文件考到工程目录下面,这样似乎有点麻烦,最好能够直接在其他地方点击更新算法按钮,就直接把算法更新了,不知道dll方法能不能有这样的功能?如果可以,怎么实现,请大家费费力气再敲几下,呵呵
cheer2008 2007-02-12
  • 打赏
  • 举报
回复
我也想知道,我想做一个加密数据的DLL,用这存取速度会很慢,不知怎么改进!
jinxinsemems 2007-02-12
  • 打赏
  • 举报
回复
写成类也可以,复用性和维护性都不错。
yxq123 2007-02-12
  • 打赏
  • 举报
回复
顶楼上的,用DLL好。虽然自己不会做动态连接库,但是别人都把相对固定的算法做成DLL,这样的系统稳定性&可维护性好。
东文-桑晨 2007-02-12
  • 打赏
  • 举报
回复
使用DLL吧,如果参数固定,直接更新DLL的算法的函数,就可以调用新的算法了
toddzst 2007-02-12
  • 打赏
  • 举报
回复
94
cilluick 2007-02-12
  • 打赏
  • 举报
回复
其实楼主你想的复杂了,什么Ain,Bin......呵呵,就想楼上兄弟说的那样了,将算发作成函数,然后给这个算法函数传递要用到的参数就可以了.
syy64 2007-02-12
  • 打赏
  • 举报
回复
1、将算法部分作成函数,主程序调用该函数,它们之间通过参数进行数据的传递;
2、将算法部分作成Dll,主程序调用该Dll,它们之间通过参数进行数据的传递;
3、将算法部分作成工作线程。

16,472

社区成员

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

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

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