软件频道>程序开发>JavaVBVCDelphiC/C++Web开发微软专栏移动数据库程序人生软件工程|开发客
您现在的位置: 天极网 > 开发频道 > 转:从VC++到GCC移植:谈两者语法差异
全文

转:从VC++到GCC移植:谈两者语法差异

2007-01-31 08:00作者:许式伟出处:csdn责任编辑:龙犊

  作者:许式伟 (版权声明

  类型引用

以下是引用片段:
  template 
  class Foo
  {
  typedef T::SomeType SomeType;
  };

  这段代码在VC++中一点问题也没有,但是GCC并不允许,因为它不知道T::SomeType是什么。你需要改为:

以下是引用片段:
  template 
  class Foo
  {
  typedef typename T::SomeType SomeType;
  };

  通过typename T::SomeType告诉GCC,SomeType是一个类型名,而不是其他东西。

  当然,这种情况不只是出现在typedef中。例如:

以下是引用片段:
  template 
  void visit(const Container& cont)
  {
  for (Container::const_iterator it = cont.begin(); it != cont.end(); ++it)
  ...
  }

  这里的Container::const_iterator同样需要改为typename Container::const_iterator。

软件资讯·软件下载尽在天极软件

共3页。 1 2 3 下一页 末页
相关搜索:
关注此文读者还看过
文章排行
本周
本月
最近更新
关于我们|About us|网站律师|天极服务|电子杂志|RSS订阅|加入我们|网站地图
TMG
Copyright (C) 1999-2009 Chinabyte.com, All Rights Reserved 版权所有 天极网络
商务联系、网站内容、合作建议:010-82657868
版权声明 在线提交意见反馈 渝ICP证B2-20030003号
经营性网站备案信息 网警备案 中国网站排名
天极传媒:天极网|比特网|IT专家网|IT商网|52PK游戏网|IT分众