我正在使用C++编程,想要创建一个带有可选参数的函数,这个可选参数是一个QMap。问题是我该把默认值设置为什么。我希望它的默认值是一个空的map。
void function(int i, QMap< QString, QString > MyMap = ???)
你需要填写什么?
我正在使用C++编程,想要创建一个带有可选参数的函数,这个可选参数是一个QMap。问题是我该把默认值设置为什么。我希望它的默认值是一个空的map。
void function(int i, QMap< QString, QString > MyMap = ???)
Question:
what do you put for ???
You can put a default constructed object.
void function(int i, QMap< QString, QString > MyMap = QMap<QString, QString>())
You can put a call to a function that returns a compatible object.
QMap< QString, QString > const& foo();
void function(int i, QMap< QString, QString > MyMap = foo())
您可以使用指向QMap(QMap*)的指针,并将其默认值设置为NULL:
void function(int i, QMap< QString, QString > *MyMap = NULL)
{
}