鱼C论坛

 找回密码
 立即注册
查看: 1169|回复: 0

问一个编译时出现的错误

[复制链接]
发表于 2015-3-18 08:55:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 Lited 于 2015-3-18 08:56 编辑

不知道论坛里有没有对Gmsh进行二次开发的,有的话更好啦!
总之源代码很长,我就把出错的那一段拿出来吧。
错误是error C2679: 二进制“=”: 没有找到接受“std::_Tree<_Traits>::const_iterator”类型的右操作数的运算符(或没有可接受的转换)
1>        with
1>        [
3>        ]
1>            _Traits=std::_Tset_traits<MElement *,std::less<MElement *>,std::allocator<MElement *>,false>

源代码出错的那段:
MVertex* Recombinator::find(MVertex* v1,MVertex* v2,MVertex* v3,MVertex* already,const std::set<MElement*>& bin){
  bool flag1,flag2,flag3,flag4;
  MElement* element;
  MVertex *a,*b,*c,*d;
  MVertex* pointer;
  std::set<MElement*>::iterator it;

  pointer = 0;

  for(it=bin.begin();it!=bin.end();it++){
    element = *it;

        a = element->getVertex(0);
        b = element->getVertex(1);
        c = element->getVertex(2);
        d = element->getVertex(3);

        flag1 = inclusion(v1,a,b,c,d);
        flag2 = inclusion(v2,a,b,c,d);
        flag3 = inclusion(v3,a,b,c,d);
        flag4 = inclusion(already,a,b,c,d);

        if(flag1 && flag2 && flag3 && !flag4){
          if(a!=v1 && a!=v2 && a!=v3){
            pointer = a;
          }
          else if(b!=v1 && b!=v2 && b!=v3){
            pointer = b;
          }
          else if(c!=v1 && c!=v2 && c!=v3){
            pointer = c;
          }
          else{
            pointer = d;
          }
          break;
        }
  }

  return pointer;
}


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-25 19:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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