棋牌源码吧

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 238|回复: 0

C4346: “std::map::iterator” : 依赖名称不是类型

[复制链接]

2971

主题

0

回帖

8930

积分

超级版主

Rank: 8Rank: 8

积分
8930
发表于 2023-8-9 03:17:07 | 显示全部楼层 |阅读模式
一个VC6的代码,转成VS2003的时候,碰到下面的语句编译出错,VC6下没问题。
  
template  class CN3TableBase
{
public:
CN3TableBas不清楚的图片怎么变清晰e编译器和解释器的区别();
virtual ~CN3名称是什么意思TableBase();
protected:
...
typedef std::map:编译器:iterator it_Table;
typedef std::map::value_type val_Table;
ty名称大全微信pedef std::pair pair_Table;
};
  

改为:

typedef typename std::map::类型的主要要素包括iterat编译器or it_名称大全微信Table;
typedef typename std::map::value_type val_Table;
typedef t是个大佬ypename std::pair pair_Table;
就解决了
  
原因:可能编译器不清楚map的iterator是否是个类型 需要通过typename告诉编译器 这是个类型
游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|棋牌源码吧

GMT+8, 2024-9-20 05:28 , Processed in 0.065051 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表