C++ 根据以下代码构造的对象类型是什么,即新TreeNode<;int>;(13)
《C++入门》一书中写道: 编译器使用初始值设定项的类型来推断要分配的类型 它还提到: 我们可以使用C++ 根据以下代码构造的对象类型是什么,即新TreeNode<;int>;(13),c++,C++,《C++入门》一书中写道: 编译器使用初始值设定项的类型来推断要分配的类型 它还提到: 我们可以使用auto从初始值设定项推断出要分配的对象的类型 在下面的代码行中,new TreeNode(13)是否返回int*类型的指针(因为初始值设定项是13,即int),或者返回指向TreeNode类型的对象的指针 模板 三烯类{ T数据; TreeNode*左; TreeNode*对; 公众: TreeNode(T init_值):数据(init_值),左(NULL),右(NULL){} }; int
auto
从初始值设定项推断出要分配的对象的类型
在下面的代码行中,new TreeNode(13)
是否返回int*
类型的指针(因为初始值设定项是13
,即int
),或者返回指向TreeNode
类型的对象的指针
模板
三烯类{
T数据;
TreeNode*左;
TreeNode*对;
公众:
TreeNode(T init_值):数据(init_值),左(NULL),右(NULL){}
};
int main(){
树节点*主节点=新树节点(13);
返回0;
}
本书的这一部分描述了关键字auto
的行为。这不是一般的行为<代码>自动(obj)是一种特殊情况<代码>自动不是一种类型。它是占位符的关键字:
使用auto
从对象推断类型
在newtreenode(13)中
您正在使用特定类型,并且可以使用int
初始化此类型的对象。它返回指向TreeNode
newtreenode(13)
的指针,结果是TreeNode*
newtreenode(13)
返回指向TreeNode
的指针<代码>自动(obj)是一种特殊情况<代码>自动不是一种类型。它是一个占位符: