由于 auto
关键字在编译时获取类类型,我想知道使用 auto*
是否有任何效率,或者是否有任何特殊用途该表达式,因为 auto
在编译时已经获得了指针类型。
最佳答案
这个“新奇的 C++11”与高效编译没有任何关系,除了在非常奇怪的极端情况下。 所有这些都是为了让人类更容易编写和理解代码。 auto*
让您清楚地知道您拥有一个指针类型的值,并且编译器仅将其用作额外的类型检查标准,并且如果该类型不是指针类型,则会发出诊断信息——您的代码将出现格式错误,这是一个硬错误。
我不记得 auto*
是否可以作为消歧器参与类型推导,但如果可以,那将是使用它的技术原因。 语言律师,船上有语言律师吗? :)
大多数设计得当的项目——即使是大型项目——在更改后都应该快速重新编译,这是对代码进行适当分区并拥有利用这种分区的开发构建的问题。
关于c++ - auto* 在编译时有用还是 auto 关键字就足够了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53917719/