小编D. *_*lex的帖子

使用std :: begin和std :: end进行矢量初始化

为什么它可行?有两个不同的字符串,"testString"但矢量大小正确分配.

#include <iostream>
#include <vector>
#include <iterator>

int main()
{
    std::vector<char> str;
    str.assign(std::begin("testString"), std::end("testString"));
    copy(str.begin(), str.end(), std::ostream_iterator<char>(std::cout, " "));

    std::cout<<str.size();

    return 1;
}
Run Code Online (Sandbox Code Playgroud)

c++ vector string-literals

5
推荐指数
1
解决办法
319
查看次数

如何指定cmake中必须设置和存在的变量

我需要指定一些变量并存在于环境中。如果它不存在,则需要停止构建。

例子

if ( "${VARMUSTEXIST}" STREQUAL "ON" )
   message(STATUS is ON)
elif ("${VARMUSTEXIST}" STREQUAL "OFF")
   message(STATUS is OFF)
endif()
Run Code Online (Sandbox Code Playgroud)

我不想if (defined VARMUSTEXIST)在脚本中随处放置。在 bash 中,有一个“set -u”选项。

variables cmake defined

4
推荐指数
1
解决办法
6546
查看次数

标签 统计

c++ ×1

cmake ×1

defined ×1

string-literals ×1

variables ×1

vector ×1