【发布时间】:2018-04-18 13:42:42
【问题描述】:
我正在使用不具有 is_trivially_constructible 类型特征的 gcc-4.9。查看 libstdc++ 源代码(type_traits),这取决于编译器本身实现的 __is_trivially_constructible。
我想知道是否可以将这个特性作为一个库来实现,而不是依赖编译器,这样我就可以在我的项目中使用它,而这个项目使用 gcc-4.9 卡住了。
【问题讨论】:
-
我不这么认为。例如。在llvm implementation 中,使用了占位符
is_scalar,这似乎是第一个近似值。 -
作为记录,MSVC (2015) 也使用了内在函数。
-
@Jodocus LLVM 也使用内部函数:github.com/llvm-mirror/libcxx/blob/master/include/…
-
@Holt 是的,如果它不可用,它会退回到实际上是错误的东西上,这表明如果可能的话,libc++ 的作者会这样做。
-
@Jodocus,我也在寻找是否有一些近似的实现。这样一些类型会受益。
标签: c++ typetraits c++-standard-library libstdc++