[英]Enable c++14 in visual studio 2015 cmake
我试图在堆栈上有一个动态大小的数组。 我有以下代码
int length = 0;
getLength(&someVar, &length);
char infoLog[length];
但是我做不到 我最初是在macOS上开发代码的,编译起来没有问题。 我进行了一些研究,发现c ++ 14支持此功能,但是我不确定如何在CMake(或VS2015社区版)中将其打开。
谢谢
编辑:正如drescherjm所示,它实际上并未添加到规范中。 是否按照以下答案进行操作。
不,C ++ 14不支持它。
尝试改用动态容器:
std::vector<char> infoLog(length);
如果您不想在创建后允许调整大小(因为VLA不允许),则
auto infoLog = std::make_unique<char[]>(length);
两者都将使用堆空间来存储内容,并在变量infoLog
离开作用域时自动释放它们。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.