代码之家  ›  专栏  ›  技术社区  ›  Nima

花括号上的崩溃:调试断言失败

  •  1
  • Nima  · 技术社区  · 16 年前

    在VS2008、C++中,我有一段代码在调试模式下运行。

    表达式:\块\类型\有效(pHead->(使用)

    我不明白为什么要用花括号?这对你们有意义吗?

    for(int e=0; e<mesh->edges.size(); e++)
    {
        if(mesh->edges[e].valid && mesh->edges[e].v[0]>=0 && mesh->edges[e].v[1]>=0 &&
            mesh->points[mesh->edges[e].v[0]].writable && mesh->points[mesh->edges[e].v[1]].writable)
        {
            //update v_hat and its corresponding error
            DecEdge Current = DecEdge(e);
            pair<Point, float> ppf = computeVhat(e);
            Current.v_hat = ppf.first;
            Current.error = ppf.second;
    
            edgeSoup.push(Current);
            mesh->edges[e].needsUpdate=false;
        }
    }
    
    3 回复  |  直到 8 年前
        1
  •  1
  •   Paul Kuliniewicz    16 年前

    根据我的经验,发生在关闭支架上的崩溃意味着崩溃发生在块超出范围时运行的析构函数中。我会查一下毁灭器里发生了什么 DecEdge Point

        2
  •  0
  •   Romain Hippeau    16 年前

    有些库是在调试模式下编译的,有些是在发布模式下编译的。

        3
  •  0
  •   Cœur Gustavo Armenta    8 年前