为什么函数不能对空指针可以赋值吗用new操作赋值

在构造函数中使用new时应注意的事项
将一个对象复制给另一个对象。通常该类方法与下面类似:
String::operator=(const String & st)
If(this==&st)
delete [ ]
str=new char [len+1];
std::strcpy(str,st.str);
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。为什么函数不能对空指针用new操作赋值_百度知道
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
为什么函数不能对空指针用new操作赋值
我有更好的答案
Unity 的脚本系统是基于 Mono 的(一个开源的 .NET Framework),所以不会有“指针”的概念,但是对于 C# 语言中的对象来说,有可能你没有创建对象(用 new 或其他函数返回的对象赋值)就调用某个类的变量,会导致空引用错误,这和空指针很类似。
采纳率:96%
来自团队:
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包相关文章推荐
C++:在构造函数中使用new时应该注意的事项标签(空格分隔): c++
如果在构造函数中使用了new初始化指针对象,那么应该在析构函数中使用delete释放对象。
new和delete必须相互兼容,...
使用new初始化对象的指针成员时必须特别小心。tu
============================================================================
: 堆栈(堆...
我先把结论列出来:当成员变量和形参是指针,最好不要使用:成员变量(形参)这样的形式。因为你可以不是进行:成员变量 = 形参这个方向的赋值,你可能是执行:形参 = 成员变量这个方向的赋值。因为前提,它们...
关于New C++Primer中的说明使用new的说明(懒得打字,就截图了 )
重写String类的代码
从语法上来说,构造函数和析构函数都可以抛出异常。但从逻辑上和风险控制上,构造函数和析构函数中尽量不要抛出异常,万不得已,一定要注意防止资源泄露。在析构函数中抛出异常还要注意栈展开带来的程序崩溃。
使用无参构造函数创建对象时,不应该在对象名后面加上括号。
class CText
问题:c++中的new操作符 通常完成两个工作 分配内存及调用相应的构造出世核函数。
1)如何让new操作符不分配内存,只调用构造函数?
2) 这样的用法有什么用?
解答:(要求new...
合成默认构造函数
class ClsComplex
int m_nIma...
他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)下面有关空指针和未初始化指针,说法错误的是?
对0x0这个地址取值是非法的
空指针可以确保不指向任何对象或函数; 而未初始化指针则可能指向任何地方。
空指针与任何对象或函数的指针值都不相等
mallc在其内存分配失败时返回的是一个未初始化的指针
该题目由提供于
选择纠错区域
题目内容有错
题目标签有错
这个大概大家都知道,空指针与野指针的区别,空指针也就是通常指向为NULL的指针,野指针就是指向一块未知的内存区域(可以是通过malloc或new申请空间后,释放后没有将指针置为空),也有可能定义了一个指针没有初始化,由于内存空间中的值在未赋值之前是随机数,所以也有可能诞生野指针。
就上面这道题目而言:
A肯定是对的,无法为内存为0的地址取地址
B也是对的咯
C空指针的值肯定是NULL,也就是0,而其他指针都有对象了,有对象就有地址,有地址也就有值了,所以两个值是不可能相等的
Dmalloc申请内存空间失败的时候,人家返回的值为NULL,而不是任意的。
通往牛逼的路上,请先登录!
扫描后移动端查看本题
微信公众号QQ公众群
直接第三方登录}

我要回帖

更多关于 空指针调用函数 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信