vscode 使用 clang 格式化 c++代码

原文链接: vscode 使用 clang 格式化 c++代码

上一篇: wasm 前端抠图 性能对比

下一篇: webpack import wasm

需要ubuntu  安装 clang

vscode 安装 clang-format 插件和 clangd插件

sudo apt-get update

sudo apt-get upgrade -y



curl -SL http://releases.llvm.org/9.0.0/clang%2bllvm-9.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz | tar -xJC .

# For Ubuntu 18.04: 
# curl -SL http://releases.llvm.org/9.0.0/clang%2bllvm-9.0.0-x86_64-linux-gnu-ubuntu-18.04.tar.xz | tar -xJC . 
# For Ubuntu 14.04: 
# curl -SL http://releases.llvm.org/9.0.0/clang%2bllvm-9.0.0-x86_64-linux-gnu-ubuntu-14.04.tar.xz | tar -xJC .




mv clang+llvm-9.0.0-x86_64-linux-gnu-ubuntu-16.04 clang_9.0.0
sudo mv clang_9.0.0 /usr/local

# For Ubuntu 18.04: 
mv clang+llvm-9.0.0-x86_64-linux-gnu-ubuntu-18.04 clang_9.0.0
sudo mv clang_9.0.0 /usr/local

# For Ubuntu 14.04: 
mv clang+llvm-9.0.0-x86_64-linux-gnu-ubuntu-14.04 clang_9.0.0
sudo mv clang_9.0.0 /usr/local


add  .bashrc or .zshrc 


export PATH=/usr/local/clang_9.0.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/clang_9.0.0/lib:$LD_LIBRARY_PATH

添加路径, 这样就能使用格式化了

up-9658b140437ac8c2168cacf6c651a83a012.png

t.cpp

#include <utility>
#include <string>
#include <iostream>

template<class... T>
auto pack(T... t)
{
    // Now legal in  C++20
    return [...t=std::move(t)](auto&& f){f(t...);};
};

// Forgive me Kate Gregory
void f(int age, const std::string& name )
{
    std::cout <<"I am " << name <<" and am " <<age <<" years old\n";
}
int main(int argc,char** argv )
{
    if ( argc != 3)
    {
        std::cerr << " Provide my age then my name\n";
        return -1;
    }

    int age = std::stoi(argv[1]);
    std::string name =  argv[2];
    auto func = pack(age,name);
    func(f);
    return 0;
}

up-d449a68adb618eedef2b9685711c44567d8.png

clang++ -stdlib=libc++ -std=c++2a -Wall trial.cpp -o trial

./trial 25 oguz

up-e22d8e5478deb641ae35c26e15007158fac.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值