This question already has answers here:
C++ function called without object initialization
(7个答案)
Undefined, unspecified and implementation-defined behavior
(8个答案)
3年前关闭。
如果我有一个矩形类
我取消了这样的对象:
然后使用Set function as
该程序运行并且没有显示任何错误,而根据我的说法,它应该显示错误,因为我尚未初始化指针。
(7个答案)
Undefined, unspecified and implementation-defined behavior
(8个答案)
3年前关闭。
如果我有一个矩形类
class Rectangle{
private:
double width;
double height;
public:
void Set(double w , double l){
width = w;
height = l;
}
};
我取消了这样的对象:
Rectangle *Obj;
然后使用Set function as
Obj->Set(6.0, 9.0);
该程序运行并且没有显示任何错误,而根据我的说法,它应该显示错误,因为我尚未初始化指针。
最佳答案
使用未初始化的指针是未定义行为。这意味着实现可以执行任何所需的操作,或者什么都不做。
该行为只是未定义。
关于c++ - 为什么不访问未初始化的指针不会显示任何错误? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32963735/
10-13 00:02