Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
vector<double> salaries(); vector<double> salaries;
我想声明一个空向量,以上两个声明是可能的,因为编译器没有返回错误。以上两个声明有什么区别?
随着更新,您显示的两个声明是:
请注意,有时编写 (1) 的目的是为了与 (2) 做同样的事情(即使用默认构造函数)。但这不是编译器所看到的 - 这通常被称为“最令人烦恼的解析”,您应该能够通过一些搜索找到更多信息。但是,基本上,这是语言语法中的(故意)歧义,语言规范通过要求将特定语法视为函数来解决,但仍然让很多人感到惊讶。