簡體   English   中英

如何擺脫 g++ 命令行中的 -std=c++17 ?

[英]how to get rid of -std=c++17 in g++ command line?

我遇到了一個錯誤,說 std::size() 不是 std 的成員。 然后我找到了這個鏈接: Why std::size() is not a member of std in gcc 8.2.0最終,在我使用g++ -std=c++17 myFile.cpp編譯文件后,我的代碼運行良好。 現在,我按照上一個鏈接的建議嘗試g++ -std=c++17 6.cpp -o - 6.out ,但沒有成功。 任何意見?

使用以下命令編譯:

g++ -std=c++17 yourFile.cpp -o output_executable_name

yourFile.cpp替換為.cpp文件的名稱,並將output_executable_name替換為您想要的名稱,它將生成具有此名稱的可執行文件。

在此處查找有關 g++ 編譯器的更多信息。

這可以通過 shell 別名來完成。

如果您真的想擺脫鍵入-std=c++17的麻煩,您可以在.bashrc.zshrc文件(或與您使用的 shell 對應的任何 rc 文件)中設置別名。

我主要使用zsh,但幾乎所有shell都使用相同的過程......

找出您與echo $SHELL一起使用的 shell 這可能是/bin/zsh/bin/bash 然后根據您的 shell 進行以下操作

vim ~/.zshrcvim ~/.bashrc (取決於你的外殼)

添加alias g++="g++ -std=c++17"然后保存文件

重新啟動您當前的外殼/終端 window (關閉並重新打開)

下次你用 go 編譯時:

g++... shell 將用g++ -std=c++17替換它,並為自己節省了 10 次擊鍵。

注意:如果您打算為不同的項目使用各種編譯器版本,則不建議這樣做,但如果您問這個問題,它可能永遠不會有關系。 哈哈!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM