请问图中CPP代码编译器的处理过程是怎样的?

请问下面代码编译器的处理过程是怎样的,详见代码

template<typename B, typename D>
class is_base_and_derived {
private:
  template<typename T>
  static int judge(D const *, T);
  static char judge(B const *, int);
  struct host {
    operator D const * () ;
    operator B const * () const ;
  };
public:
  enum { value = (is_same<B, D>::value || sizeof(int) == sizeof(judge(host(), 0))) };
};
阅读 831
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题