【发布时间】:2023-01-27 01:59:52
【问题描述】:
我正在看这个关于堆栈和堆的教程:
When to use new operator in C++ and when it should not be used?
而在堆的例子中,它使用了new关键字,但他首先将int* ptr1初始化为NULL。这重要吗?如果重要,为什么?或者,它只是在浪费空间吗?
我查看了代码并试图思考为什么在您可以使用 int* ptr1 = new int(28); 时首先使用 NULL?
边注: 如果有人也能通俗地解释一下堆栈和堆,将不胜感激。
【问题讨论】:
-
应该使用 good c++ book 而不是在线教程来学习 C++。这些基本内容在任何初学者 C++ 书籍中都有解释。
-
大多数人都会这么想。 (这不是一个很好的学习来源。没有已知的好的在线 C++ 教程。找一本好书。)
-
没有充分的理由。
-
网络上有许多过时和糟糕的教程。远离任何使用
using namespace std;或使用NULL(而不是现代的nullptr)的人。 -
@chi 不要忘记那些
#include <bits/stdc++.h>、geeksforgeeks 和所有竞争性编码网站
标签: c++ stack new-operator heap