相关疑难解决方法(0)

C NULL是否等于C++ 11 nullptr

我喜欢使用nullptr而不是NULL.现在我调用一个C函数(libjansson在本例中).

NULL在C中是实现定义的.

因为nullptr我发现"空指针常量是整数类型的整数常量表达式(5.19)rvalue,其值为零".

所以最安全的事情是:

auto string_obj=json_object_get(m_handle,name);
if(string_obj!=NULL)
    {
    auto string=json_string_value(string_obj);
    if(string!=NULL)
        {return string;}
    }
return nullptr;
Run Code Online (Sandbox Code Playgroud)

我真的需要它还是可以更简单地做到这一点:

auto string_obj=json_object_get(m_handle,name);
if(string_obj!=nullptr)
    {
    return json_string_value(string_obj); //Assume there is no difference between C NULL and C++11 nullptr
    }
return nullptr;
Run Code Online (Sandbox Code Playgroud)

c null interop c++11

17
推荐指数
1
解决办法
2万
查看次数

标签 统计

c ×1

c++11 ×1

interop ×1

null ×1