zoukankan      html  css  js  c++  java
  • ubuntu升级编译器

    几个小步骤丝滑升级 C++ 23的编译器

    sudo add-apt-repository ppa:ubuntu-toolchain-r/test
    sudo apt-get update
    apt install build-essential
    apt install gcc-11
    apt install g++-11
    ln -sf g++-11 c++
    ln -sf gcc-11 cc
    ln -sf gcov-11 gcov
    ln -sf gcc-11 x86_64-linux-gnu-gcc
    ln -sf g++-11 x86_64-linux-gnu-g++

    软连接必须做要不会出现错误:gcc: error trying to exec 'cc1plus': execvp: No such file or directory

    测试编译下:

    #include <iostream>
    #include <string>
    #include <utility>
    template<typename T>
    class Base{
    public:
        Base() = default;
        explicit Base(T v) :var(std::move(v)){}
        Base &operator = (const T &v){
            var = v;
            return *this;
        }
        decltype(auto) get(){
            return var;
        }
    private:
        T var{};
    };
    
    
    template<typename ... Ts>
    class Multi: private Base<Ts>...{
    public:
        using Base<Ts>::operator=...;
        using Base<Ts>::Base...;
    
    };
    
    int main() {
        Multi<int, std::string> var;
        var = 10;
        var = "houdini";
        return 0;
    }

     Clion yyds!

  • 相关阅读:
    error C2144
    Linux下STL使用
    GZip压缩的实例
    头文件类型的选择
    双重指针
    locate命令的使用
    有了malloc/free为什么还要new/delete !
    Mongdb windows下安装
    虚函数工作机制
    extern使用
  • 原文地址:https://www.cnblogs.com/gearslogy/p/15100949.html
Copyright © 2011-2022 走看看