struct参数的默认值 [英] Default value for struct parameter
本文介绍了struct参数的默认值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
假设我具有以下结构:
struct myStruct
{
int x;
int y;
int z;
int w;
};
我想在调用以下函数时将此结构初始化为默认值.如果有帮助,我正在寻找一个简单的零初始化.
I want to initialize this struct to a default value when calling the following function. If it helps I'm looking for a simple zero initialization.
void myFunc(myStruct param={0,0,0,0})
{
...
}
但是,此代码给了我编译错误.我已经尝试过VS2003和VS2008.
This code however gives me compile error. I've tried VS2003 and VS2008.
注意::我已经看过其他提及构造函数使用的答案.但是,我希望用户查看我正在使用哪些值进行初始化.
NOTE: I have looked at other answers mentioning the use of constructor. However I want the user to see what values I'm using for initialization.
推荐答案
在 myStruct 中添加默认构造函数将解决您的问题.
Adding default constructor in to your myStruct will solves your problem.
struct myStruct {
myStruct(): x(0),y(0), z(0), w(0) { } // default Constructor
int x, y, z, w;
};
函数声明:
void myFunc(myStruct param = myStruct());
这篇关于struct参数的默认值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文