个把月前发现用Code写CPP,头文件找的位置似乎不对,找的是MSVC的头文件,产生了疑心。
今天具体了解了一下clang等,在已经存在的提问发现:下载的prebuilt版本llvm/clang不包含标准库,只包含编译器,因此之前安装编译环境时才需要覆盖MinGW W64的文件夹。
看了另一篇文章(14年5月的),还有存疑的两点:clang不支持sjlj和seh异常处理标准,seh异常处理专利在14年到期了,今年是19年。clang不支持__declspec(dllexport)和__declspec(dllimport),这个我不了解,五年过去了也该修好了。
回答给出了几个选项,使用WindowsSDK的标准库,使用MinGW的标准库,使用libcxx(linux下)。介于Visual Studio肯定是要装的,MinGW就多此一举了。
其实仔细想来甚至可以不用clang直接上msvc,但是用clang是想要它更友好的报错和LINT(静态检查)等功能,所以就clang配合sdk使用,实际上静态检查可以考虑安装插件,但报错还是友好点好,具体的重装完再理一理。
2019.06.23 Clang不包含标准库
最新推荐文章于 2024-05-08 17:22:18 发布