有关 c++ 中指针的说明
Clarifications about pointers in c++
在这里,我有一些代码行有问题:
struct Node
{
String data;
Node * next;
};
struct List
{
Node * head;
};
static Node * nouvNode (string word,Node *p = nullptr){
Node *pNouv = new Node ;
pNouv->data =word;
pNouv->next = p;
return pNouv;
好的,这是我的问题:
1)pNouv 这里是我创建的指针,指向一个节点。当我做pNouv=>next=p
时,这是否意味着我在 pNouv 中的指针指向指针 p 也指向的下一个节点?或者我的指针指向一个笔记,该笔记也有一个指针指向另一个节点,其中 P 指向相同的方式?
2) static Node * nouvNode (string word,Node *p = nullptr)
这是一种创建包含数据的新节点的方法,但为什么参数中需要有"节点 *p = nullptr"?例如,当我在程序中创建一个节点时,我会nouvNode(word, ls.head)
执行此操作。
感谢您的帮助。
pNouv->next=p
根据我的理解,如果您执行上述语句pNouv
节点开始指向p
节点,这只不过是NULL
。所以上面的代码语句等效于
pNouv=>next=NULL;
2) static Node * nouvNode (string word,Node *p = nullptr)
将Node *p = nullptr
作为第二个参数传递是可选的。你只需要word
.您始终可以在函数主体中创建新节点并从头部遍历,然后最终将新创建的节点定位在所需位置。
1) pNouv->next = p
表示结构中pNouv
指向的结构中的结构成员next
设置为指向与p
相同的事物。所以有一个内存块。 pNouv
指向该内存块。在该内存块中的某个位置,您将地址从 p
.
2) = nullptr
添加使该参数可选。您可以有效地调用nouvNode(word)
,您将收到一个值为 word
相关文章:
- 当使用通配符和null指针调用函数时,对输出的说明
- 关于C++中具有多重继承"this"指针的说明
- 指针数组说明
- 有关通过引用传递指针的说明
- 说明通过指针访问非静态类成员函数
- 了解 ARM 程序集说明和 C/C++ 指针
- 该指针操纵功能的说明
- 请求对数组中指针行为的说明
- 模板化函数指针说明
- C /参考操作员和指针中的插座连接()函数说明
- 函数指针说明
- C++指针分配说明
- C++03 12.4/12对通过指针显式调用基类析构函数有何说明
- 函数指针的说明
- 有关 c++ 中指针的说明
- 指针分配说明
- 关于指向非静态类成员的指针的说明
- 对指向函数转换的指针的说明
- 无法'this'指针从'const Line'转换为'Line &'说明?
- 关于智能指针运算符*和运算符>重载的说明