EDG,获取C ++好友数据

时间:2011-09-05 13:50:27

标签: c++ parsing compilation edg

我使用 edg 软件(Edison Design Group)来解析C ++代码。 我需要获得有关所有朋友课程的信息。

例如

class A;
class B;
class C{
   private:
      int x;
      double y;
   public: 
       friend class A;
       friend class B;
}

在解析C类时,我需要得到A,B类是C的朋友。 我试图在class_struct_union字段中查找此信息,但不幸的是没有找到任何内容

例如,从variant.class_struct_union.field_list我可以获得类数据成员(x和y)的信息。我寻找获取有关朋友类(A和B)的信息的方法

有谁能告诉我,我在哪里可以找到朋友类的信息? 并且可能会为朋友数据检索提供一些代码吗?

1 个答案:

答案 0 :(得分:3)

  

有谁能告诉我,我在哪里可以找到朋友类的信息?并且可能会为朋友数据检索提供一些代码吗?

是的,有人可以。据我所知,edg是商业产品(封闭源代码),如果您可以使用它,您或您的公司都有商业支持计划。所以,你可以直接询问EDG。

如果您有权访问EDG代码,请尝试grep friend *.h *.hpp */*.h */*.hpp。或者,您可以找到class_struct_union的定义并检查其字段。

AFAIK,公众无法访问EDG来源,因此在论坛或任何开放的网站上提问时,没有人能够帮助您。