【发布时间】:2013-07-31 03:50:54
【问题描述】:
我不明白为什么在这个构造函数声明中,输入参数被赋值为2。
这是什么意思?这是否意味着默认情况下(除非传递其他内容),大小将为 2?
Graph(int size = 2);
我从来没有见过这样的语法,所以我什至不知道如何谷歌它:/
提前致谢!
【问题讨论】:
标签: c++ parameters constructor
我不明白为什么在这个构造函数声明中,输入参数被赋值为2。
这是什么意思?这是否意味着默认情况下(除非传递其他内容),大小将为 2?
Graph(int size = 2);
我从来没有见过这样的语法,所以我什至不知道如何谷歌它:/
提前致谢!
【问题讨论】:
标签: c++ parameters constructor
你是对的,参数值默认为2。
这样就可以正常调用了:
Graph g(5);
在这种情况下,size 将等于 5,
或者你可以在不提供值的情况下调用它:
Graph g;
在这种情况下,size 将等于 2。
注意:Graph g(); 实际上是一个函数声明,而不是构造/初始化。 C 和 C++ 允许您在其他函数中声明函数。 Graph g(); 是函数 g 的声明,它不接受任何参数并按值返回 Graph 对象。
【讨论】:
Graph g(); -- 这是一个函数声明。它没有调用构造函数。删除括号。