参见英文答案 >
What is the lifetime of a default argument temporary bound to a reference parameter?2个
void foo(const std::string& s = "abc") { // ... } // ... int main() { // ... foo(); // ... }
foo会晃来晃去吗?我认为因为std :: string将从默认值“abc”构造,然后这将是一个const引用do death temporary.
我对吗?