在Fortran中的OpenMP 3.0中,特殊构造支持减少,而在C / C ++中,它被委托给程序员。我想知道是否有一个特殊的原因,因为OpenMP 3.0在2008年问世,所以我认为它还有足够的时间来实现C / C ++。是否存在与C / C ++相关的特定技术原因,为什么它仍然不支持C / C ++?
答案 0 :(得分:1)
正如评论中所提到的,OpenMP不支持默认减少数组的原因是它不知道数组的大小。 Fortran默认支持减少数组,因为无论是静态还是动态分配,它总是知道数组的大小。 C / C ++只知道静态数组的大小。