自学内容网 自学内容网

c++ std::string初始化为nullptr的问题

一.问题描述

在c++ std::string或者std::wstring  中是否可以使用nullptr初始化,首先可以说的是是可以用nullptr初始化的,但是程序编译没有问题,运行起来就挂了,char*是可以初始化为nullptr的,为啥以char*为基础的std::string不能以nullptr初始化

二.问题研究

调试一下代码发现最终是在std::strlen里面挂了,该函数会测量指针对应的内存数据大小,nullptr访问权限出错,如下

size_t __cdecl strlen
(
    _In_z_ char const* _Str
);


原文地址:https://blog.csdn.net/qq_22642239/article/details/142493103

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!