• 周六. 7 月 27th, 2024

5G编程聚合网

5G时代下一个聚合的编程学习网

热门标签

ubuntu升级编译器

admin

11 月 28, 2021

几个小步骤丝滑升级 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!

发表回复