欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

VS2019中CMake項目如何指定c++語言標(biāo)準(zhǔn)

 更新時間:2020年02月14日 21:35:49   作者:江小舉  
這篇文章主要介紹了VS2019中CMake項目如何指定c++語言標(biāo)準(zhǔn),需要的朋友可以參考下

VS2019中CMake項目怎么指定語言標(biāo)準(zhǔn)

博主前幾天在使用c++17新特性結(jié)構(gòu)綁定時報錯了,代碼如下:

#include<bits/stdc++.h>
using namespace std;
int main() {
  unordered_map<int, int> mmid;
  for (auto [a, b] : mmid) {
    cout << a << ' ' << b << endl;
  }
  return 0;
}

后來查了一下發(fā)現(xiàn)CMake項目默認(rèn)的c++語言標(biāo)準(zhǔn)是低于17的,所以就得指定一下語言版本才行。

有兩種設(shè)置方法。第一種可以設(shè)置默認(rèn)使用最新的語言標(biāo)準(zhǔn)。代碼如下,添加到CMakeLists.txt文件中即可。

if (MSVC_VERSION GREATER_EQUAL "1900")
  include(CheckCXXCompilerFlag)
  CHECK_CXX_COMPILER_FLAG("/std:c++latest" _cpp_latest_flag_supported)
  if (_cpp_latest_flag_supported)
    add_compile_options("/std:c++latest")
  endif()
endif()

不過上面的方法太過于繁瑣,不過沒關(guān)系還有第二種更簡潔的方法,只需要一行代碼就可搞定。

set(CMAKE_CXX_STANDARD 17)

這樣就能執(zhí)行使用c++17這個標(biāo)準(zhǔn)了。如果想使用其他版本的語言標(biāo)注,將17替換成對應(yīng)版本即可。

PS:特別注意,添加上訴代碼一定要放在CMakeLists文件的開頭位置,不然是無效的。

cmake指定c++編譯版本

修改 CMakeLists.txt 文件,添加如下命令

SET(CMAKE_C_COMPILER "/home/public/local/bin/gcc")

SET(CMAKE_CXX_COMPILER "/home/public/local/bin/g++")

Cmake編譯使用C++11

cmake編譯項目需要C++11特性的支持,只需要在CMakeLists.txt中加入:

add_definitions(-std=c++11)

這篇文章就介紹到這了,希望大家以后多多支持腳本之家。

相關(guān)文章

  • c++定義全局變量詳解

    c++定義全局變量詳解

    這篇文章主要給大家介紹了C++語言中定義全局變量,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2021-10-10
  • C語言實現(xiàn)系統(tǒng)關(guān)機注銷功能

    C語言實現(xiàn)系統(tǒng)關(guān)機注銷功能

    這篇文章主要為大家詳細(xì)介紹了C語言實現(xiàn)系統(tǒng)關(guān)機注銷功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • 關(guān)于C語言多線程pthread庫的相關(guān)函數(shù)說明

    關(guān)于C語言多線程pthread庫的相關(guān)函數(shù)說明

    下面小編就為大家?guī)硪黄P(guān)于C語言多線程pthread庫的相關(guān)函數(shù)說明。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • C語言實現(xiàn)定時器控制LED燈閃爍

    C語言實現(xiàn)定時器控制LED燈閃爍

    這篇文章主要為大家詳細(xì)介紹了C語言實現(xiàn)定時器控制LED燈閃爍,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • boost.asio框架系列之buffer函數(shù)

    boost.asio框架系列之buffer函數(shù)

    這篇文章介紹了boost.asio框架系列之buffer函數(shù),文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • 詳解C語言中的內(nèi)存四區(qū)模型及結(jié)構(gòu)體對內(nèi)存的使用

    詳解C語言中的內(nèi)存四區(qū)模型及結(jié)構(gòu)體對內(nèi)存的使用

    這篇文章主要介紹了C語言中的內(nèi)存四區(qū)模型及結(jié)構(gòu)體對內(nèi)存的使用,包括結(jié)構(gòu)體中內(nèi)存泄漏情況的注意點提醒,需要的朋友可以參考下
    2016-03-03
  • C++實現(xiàn)英文句子中的單詞逆序輸出的方法

    C++實現(xiàn)英文句子中的單詞逆序輸出的方法

    這篇文章主要介紹了C++實現(xiàn)英文句子中的單詞逆序輸出的方法,涉及C++字符串遍歷、分割、截取、輸出等相關(guān)操作技巧,需要的朋友可以參考下
    2018-01-01
  • C語言實現(xiàn)按行讀寫文件

    C語言實現(xiàn)按行讀寫文件

    這篇文章主要為大家詳細(xì)介紹了C語言實現(xiàn)按行讀寫文件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • C++ ostream用法案例詳解

    C++ ostream用法案例詳解

    這篇文章主要介紹了C++ ostream用法案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • 用c語言編寫一個通訊錄代碼詳解

    用c語言編寫一個通訊錄代碼詳解

    大家好,本篇文章主要講的是用c語言實現(xiàn)一個通訊錄代碼詳解,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01

最新評論