版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ShellDawn/article/details/89015679
对于一个只有带参数构造函数的结构体来说:
struct TreeNode {
int val;
struct TreeNode *left;
struct TreeNode *right;
TreeNode(int x) :
val(x), left(NULL), right(NULL) {
}
};
编译器不生成默认构造函数,也就是说,必须需要一个int数才能构造一个TreeNode实例。
当出现成员变量只有带参数构造函数时:
struct MyTreeNode{
TreeNode t;
int sumL;
int sumR;
MyTreeNode(int x):t(x),sumL(0),sumR(0){}
};
必须采用列表初始化,如上代码。