我的第一个ACE测试例子(Linux和Windows)

来源:互联网 发布:js怎么禁止点击事件 编辑:程序博客网 时间:2024/03/28 21:12
 
我的第一个ACE测试例子(Linux和Windows)
 
 
下面的一个测试例子在Linux和Windows下均通过,代码无需改动,只需重新编译就可达到跨平台执行。从一个侧面反应了ACE在可移植性上的魅力。
 
ACE版本:5.6
编译环境Linux version 2.6.18-4-686 (Debian 2.6.18.dfsg.1-12)
gcc version 4.1.2 20061115

//源码 :welcome.cpp
#include "ace/OS.h"
#include "ace/Log_Msg.h"
 
int main (int argc, char *argv[])
{
   ACE_DEBUG((LM_DEBUG," (%P|%t) == Hello,This is a program about ACE_Timer_Value!/n"));
   if (argc != 3)
   {
      ACE_ERROR_RETURN((LM_ERROR,"usage: %d" "time1 time2/n"),1);
   }
   ACE_Time_Value time = ACE_OS::gettimeofday();
   ACE_Time_Value timer1 = time + ACE_Time_Value (ACE_OS::atoi(argv[1]));
   ACE_Time_Value timer2 = time + ACE_Time_Value (ACE_OS::atoi(argv[2]));
 
   if (timer1 > timer2)
      ACE_DEBUG((LM_DEBUG,"timer 1 is greater/n"));
   else if(timer2 > timer1)
      ACE_DEBUG((LM_DEBUG,"timer 2 is greater/n"));
   else
      ACE_DEBUG((LM_DEBUG,"timers are equal/n"));
 
   ACE_OS::exit(1);
   return 0;
}
 

 
编译:
$ g++ -o wel -lACE welcome.cpp
执行:
$ ./wel 20 10 
结果:
(6232|3081746112)==Hello,This is a program about ACE_Timer_Value!
timer 1 is greater
 
测试环境:
$ cat /proc/version
Linux version 2.6.18-4-686 (Debian 2.6.18.dfsg.1-12) (waldi@debian.org) (gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)) #1 SMP Mon Mar 26 17:17:36 UTC 2007
 
 
在Windows下也同样可以通过编译。
测试环境:Windows xp | vs2005
Windows下需要注意的一点是:
在项目的设置上:解决方案资源管理器->具体方案右键->属性->配置属性->链接器->输入->附加依赖项,添入ACEd.lib。
 
上面两个测试的前提是,ACE库均在系统下编译成功。