501lsc
驱动牛犊
驱动牛犊
  • 注册日期2001-10-04
  • 最后登录2005-05-18
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1191回复:2

新手,一个C++的傻问题就不给分了

楼主#
更多 发布于:2003-09-23 10:36
我用bc++学习c++,书上说c++有析构函数,可我在bc++中怎么无法定义,定义的方法不是
~bos();
吗?
书上还有一个例子
#include <iostream.h>

template<class T>
T min3(T arg1,T arg2,T arg3)
{
 T min;
 if((arg1<arg2)&&(arg1<arg3))
 {
  min=arg1;
 }
 else if((arg2<arg1)&&(arg2<arg3))
 {
  min=arg2;
 }
 else if((arg3<arg1)&&(arg3<arg2))
 {
  min=arg3;
 }
 return min;
}
/////////////////////////////////

const char * min3(const char *arg1,const char *arg2,const char *arg3)/**/
{
 const char *min;
 int res1 = std::strcmp(arg1,arg2);
 int res2 = std::strcmp(arg1,arg3);
 int res3 = std::strcmp(arg2,arg1);
 int res4 = std::strcmp(arg2,arg3);

 if((res1<0)&&(res2<0))
 {
  min = arg1;
 }
 else if((res3<0)&&(res4<0))
 {
  min = arg2;
 }
 else
 {
  min = arg3;
 }
 return min;
}
/////////////////////////////////
void main()
{
 std::cout<<min3(10,30,20);
 std::cout<<std::endl<<min3(\'c\',\'a\',\'z\');
 std::cout<<std::endl<<min3(\"zander\",\"smith\",\"a\");/**/
 int i;
 std::cin>>i;
}

书上说调min3(\"zander\",\"smith\",\"a\")时系统应该自动调const char * min3(const char *arg1,const char *arg2,const char *arg3)而不是还调那个模板函数,但我在bc++中调系统始终调模板,是bc++不支持这种用法吗?
dhyruin
驱动牛犊
驱动牛犊
  • 注册日期2003-10-04
  • 最后登录2005-04-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-10-12 13:32
好象是
 :P
两种不能混用
dhyruin
驱动牛犊
驱动牛犊
  • 注册日期2003-10-04
  • 最后登录2005-04-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-10-18 10:56
vc++和bc++两种程序在编译的时候
对表达式的编译顺序不同 :cool:
游客

返回顶部