最令人烦恼的解析是指 C 中的语法歧义,在声明函数时可能会导致意外结果。出现的一个令人困惑的细节是能够将某些行解析为函数声明,即使它们看起来不符合预期的语法。
考虑以下行:
vector<int> v(istream_iterator<int>(cin), istream_iterator<int>());
这一行由于最令人烦恼的解析,可以被解释为函数声明。第一个临时迭代器 istream_iterator
然而,目前还不清楚第一个临时迭代器代表什么类型。理解这一点的关键是认识到 istream_iterator
这就提出了是否可以在函数调用中任意括号参数名称的问题。答案是肯定的,如果您想突出显示参数名称或阐明其目的,可以将参数名称括起来。但是,通常不鼓励这样做,因为它可能会导致混乱或意外的代码。此语法的主要目的是支持从 C 继承的遗留语法,并且不被认为是现代 C 代码中的最佳实践。
以上是在最令人烦恼的解析中将参数名称括起来是怎么回事?的详细内容。更多信息请关注PHP中文网其他相关文章!