标签: c++ const signature entry-point
C ++标准规定所有符合要求的实现都支持main的以下两个签名:
main
int main();
int main(int, char*[]);
如果是后一个签名,那么(顶级)const的添加是否会破坏任何语言规则?
const
例如:
int main(const int argc, char** const argv);
int main(const int argc, char** const argv)
根据我的理解,顶级const限定不影响函数的签名哈希,因此就规范而言它应该是合法的。
另外,有没有人遇到过拒绝这种修改的实现?
答案 0 :(得分:5)
这是标准中的known issue。另请参阅有关该主题的this usenet discussion。