cost 62 ms
在未使用的默认成员初始值设定项中使用仍然是 ODR 使用吗? - Is use in an unused default member initializer still an odr-use?

在默认成员初始值设定项中使用是否仍然是 odr-use,即使默认成员初始值设定项未被任何构造函数使用? 例如,这个程序是否格式错误,因为g<A>是 odr-used 并且因此它的定义被隐式实例化? MSVC 认为不。 Clang、GCC 和 ICC 认为是的。 https://g ...

“用作非类型模板参数”是否使 function 模板隐式实例化? - Does "used as non-type template parameter" make a function template implicitly instantiated?

我想编写一个接受不完整类型C作为模板参数的 class 模板M 但我也希望C在最终定义时具有一些特征。 此代码是否有保证编译如果定义(标志), 并且如果编译失败?定义(标志)? ...

如果已经隐式实例化了特化,则会隐式实例化它吗? - Is a specialization implicitly instantiated if it has already been implicitly instantiated?

标题中的问题很清楚。 更具体地说,请考虑以下示例: 此代码与GCC和Clang编译 。 根据[temp.inst] / 1 : 除非已明确实例化或明确专门化类模板特化,否则在需要完全定义的对象类型的上下文中引用特化时或者类类型的完整性影响程序的语义时,将隐式实例化类模板 ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM