如何修复这个C ++全局指针到对象的黑客攻击?

时间:2013-12-20 03:49:01

标签: c++ pointers reference global

目前,我的代码如下:

static YAML::Node *doc;
...
__attribute__((constructor)) void inityaml() {
    doc = new YAML::Node;
    parser.GetNextDocument(*doc);
}

问题是,是否有更多的C ++ - convention-ish方式来执行此任务,比如使用全局引用或什么?

1 个答案:

答案 0 :(得分:2)

为什么不完全避免堆分配?

static YAML::Node doc;
...
void inityaml() {
    parser.GetNextDocument(&doc);
}