我正在尝试在Visual Studio 2015(社区版本)中编译以下代码,但遇到下面进一步显示的错误。
/*****Source Code Start*******/
constexpr char const* GetStatusAsCString(Status compute)
{
switch (compute)
{
case armnn::Status::Success: return "Status::Success";
case armnn::Status::Failure: return "Status::Failure";
default: return "Unknown";
}
}
/*****Source Code End*******/
错误消息:
错误(活动)的constexpr函数必须恰好包含一个返回值 语句ArmNN_MnistTF_64b c:\ armnn \ armnn-devenv \ armnn \ include \ armnn \ TypesUtils.hpp 22
请注意,我已确保以下设置: 1)在VS 2015中将编译器前端设置为Clang enter image description here
2)我已将C ++标准设置为C ++ 14。
请问您还缺少什么建议?一段时间以来一直在努力解决此错误。
答案 0 :(得分:1)
Visual Studio 2015尽管有很多功能,但从VS 2015 Update 3开始,甚至还没有完全实现C ++ 14。
具体来说,N3652 Extended constexpr直到VS 2017才实现。您应该升级到最新的VS 2017 Community Edition更新(此时为15.7)