cocos2d 源码分析----Node create

Posted ak47-space

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cocos2d 源码分析----Node create相关的知识,希望对你有一定的参考价值。

Node * Node::create()
{
    Node * ret = new (std::nothrow) Node();
    if (ret && ret->init())
    {
        ret->autorelease();
    }
    else
    {
        CC_SAFE_DELETE(ret);
    }
    return ret;
}
new operator分配内存失败后,缺省的行为不是返回NULL,而是抛出异常std::bad_alloc。所以判断返回值是否为NULL没有任何意义。使用 try catch 会导致代码结构很乱,
而使用
new (std::nothrow) 在分配内存失败时会返回一个空指针,逻辑简洁清晰。

以上是关于cocos2d 源码分析----Node create的主要内容,如果未能解决你的问题,请参考以下文章

结合源码分析 Node.js 模块加载与运行原理

源码分析 Node 的 Cluster 模块

Kubernetes Node Controller源码分析之配置篇

Kubernetes Node Controller源码分析之创建篇

Kubernetes Node Controller源码分析之执行篇

Kubernetes Node Controller源码分析之Taint Controller