首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Impala 疑问

Impala 疑问

原创
作者头像
jasong
发布于 2022-08-09 21:47:00
发布于 2022-08-09 21:47:00
6010
举报
文章被收录于专栏:ClickHouseClickHouse

C++ 指针传递是有问题吗? 为啥语言传达不了信息

1. 调用前后 指针的地址是没有变化的

2. eeeeeeeeeeee

代码语言:javascript
复制
Status PlanNode::CreateTreeHelper(FragmentState* state,
    const std::vector<TPlanNode>& tnodes, PlanNode* parent, int* node_idx,
    PlanNode** root) {
  // propagate error case
  if (*node_idx >= tnodes.size()) {
    return Status("Failed to reconstruct plan tree from thrift.");
  }
  const TPlanNode& tnode = tnodes[*node_idx];

  int num_children = tnode.num_children;
  PlanNode* node = NULL;
  RETURN_IF_ERROR(CreatePlanNode(state->obj_pool(), tnode, &node));
  if (parent != NULL) {
    parent->children_.push_back(node);
  } else {
    *root = node;
  }
  for (int i = 0; i < num_children; ++i) {
    ++*node_idx;
    RETURN_IF_ERROR(
        CreateTreeHelper(state, tnodes, node, node_idx, nullptr));
    // we are expecting a child, but have used all nodes
    // this means we have been given a bad tree and must fail
    if (*node_idx >= tnodes.size()) {
      return Status("Failed to reconstruct plan tree from thrift.");
    }
  }

  // Call Init() after children have been set and Init()'d themselves
  RETURN_IF_ERROR(node->Init(tnode, state));
  return Status::OK();
}

state 调用前
state 调用前
state 调用后
state 调用后

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档