Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 铿锵++;错误在<;实验性/任何>;_C++_Clang - Fatal编程技术网

C++ 铿锵++;错误在<;实验性/任何>;

C++ 铿锵++;错误在<;实验性/任何>;,c++,clang,C++,Clang,编译包含的代码时出错 main.cpp中的代码: #include <experimental/any> int main() { } 编译后出错: In file included from main.cpp:2: /usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/experimental/any:364:34: error: no template named '__any_cast

编译包含
的代码时出错

main.cpp中的代码

#include <experimental/any>
int main() { }
编译后出错:

In file included from main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/experimental/any:364:34: error: 
      no template named '__any_caster'; did you mean 'any_cast'?
        return static_cast<_ValueType*>(__any_caster<_ValueType>(__any));
                                        ^
/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/experimental/any:361:30: note: 
      'any_cast' declared here
    inline const _ValueType* any_cast(const any* __any) noexcept
                             ^
/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/experimental/any:372:34: error: 
      no template named '__any_caster'; did you mean 'any_cast'?
        return static_cast<_ValueType*>(__any_caster<_ValueType>(__any));
                                        ^
/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/experimental/any:369:24: note: 
      'any_cast' declared here
    inline _ValueType* any_cast(any* __any) noexcept
                       ^
2 errors generated.
在main.cpp:2中包含的文件中:
/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../../../../include/c++/5.4.0/experimental/any:364:34:错误:
没有名为“任何施法者”的模板;你是说“任何演员”吗?
返回静态施法(uu任意施法者(u任意));
^
/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../../../../../include/c++/5.4.0/experimental/any:361:30:注:
“任何演员”在此声明
内联常量值类型*任意常量转换(常量任意*\任意)无例外
^
/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../../../../include/c++/5.4.0/experimental/any:372:34:错误:
没有名为“任何施法者”的模板;你是说“任何演员”吗?
返回静态施法(uu任意施法者(u任意));
^
/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../../../../../include/c++/5.4.0/experimental/any:369:24:注:
“任何演员”在此声明
内联ValueType*任意_cast(任意*uu任意)无例外
^
产生2个错误。
如中所述:


您可以尝试使用libc++。可能libstdc++的新头文件与Clang不兼容


事实证明这是真的。CLAN 3.9仍然是实验性的,因此它使用实验头,包括实验C++标准库。默认情况下,它是由GCC提供的,因此GCC实现和Clang实现之间会出现不兼容。

您可以尝试使用libc++。在libstdc++的新头文件中可能有与Clang不兼容的地方,这是有原因的。您可以传递
-stdlib=libc++
In file included from main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/experimental/any:364:34: error: 
      no template named '__any_caster'; did you mean 'any_cast'?
        return static_cast<_ValueType*>(__any_caster<_ValueType>(__any));
                                        ^
/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/experimental/any:361:30: note: 
      'any_cast' declared here
    inline const _ValueType* any_cast(const any* __any) noexcept
                             ^
/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/experimental/any:372:34: error: 
      no template named '__any_caster'; did you mean 'any_cast'?
        return static_cast<_ValueType*>(__any_caster<_ValueType>(__any));
                                        ^
/usr/lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/experimental/any:369:24: note: 
      'any_cast' declared here
    inline _ValueType* any_cast(any* __any) noexcept
                       ^
2 errors generated.