• 2024-03-21C++ 对象模型
    1.普通类对象是什么布局?structBase{Base()=default;~Base()=default;voidFunc(){}inta;intb;};intmain(){Basea;return0;}2.带虚函数的类对象是什么布局?structBase{Base()=default;virtual~Base()
  • 2023-11-10C++的多重继承
    派生类都只有一个基类,称为单继承(SingleInheritance)。除此之外,C++也支持多继承(MultipleInheritance),即一个派生类可以有两个或多个基类。多继承容易让代码逻辑复杂、思路混乱,一直备受争议,中小型项目中较少使用,后来的Java、C#、PHP等干脆取消了多继承。多继承的语法也很简单,将多
  • 2023-09-01C++中基类和派生类的析构函数
    和构造函数类似,析构函数也不能被继承。与构造函数不同的是,在派生类的析构函数中不用显式地调用基类的析构函数,因为每个类只有一个析构函数,编译器知道如何选择,无需程序员干涉。另外析构函数的执行顺序和构造函数的执行顺序也刚好相反:创建派生类对象时,构造函数的执行顺序和继承顺序相
  • 2023-06-15基于TQ3568开发板分享如何配置GPIO功能为I2C_SPI_UART
    基于TQ3568开发板分享如何配置GPIO功能为I2C_SPI_UART一、将GPIO功能配置为I2C1、本例以I2C4为例,若要配置GPIO为复用功能。需要查看数据手册了解其复用关系,如下图所示。不难看出,GPIO4_B2可复用为I2C4的SDA脚,GPIO_B3可复用为I2C4的SCL脚。2、进入/opt/tq356x-linux/kernel/arch/ar
  • 2023-06-15基于TQ3568开发板分享如何配置GPIO功能为I2C_SPI_UART
    一、将GPIO功能配置为I2C  1、本例以I2C4为例,若要配置GPIO为复用功能。需要查看数据手册了解其复用关系,如下图所示。  不难看出,GPIO4_B2可复用为I2C4的SDA脚,GPIO_B3可复用为I2C4的SCL脚。2、进入/opt/tq356x-linux/kernel/arch/arm64/boot/dts/rockchip目录,打开rk3568-tqcoreA
  • 2023-06-15基于TQ3568开发板分享如何配置GPIO功能为I2C_SPI_UART
    一、将GPIO功能配置为I2C  1、本例以I2C4为例,若要配置GPIO为复用功能。需要查看数据手册了解其复用关系,如下图所示。  不难看出,GPIO4_B2可复用为I2C4的SDA脚,GPIO_B3可复用为I2C4的SCL脚。2、进入/opt/tq356x-linux/kernel/arch/arm64/boot/dts/rockchip目录,打开rk3568-tqcoreA
  • 2022-11-29C++多继承(多重继承)
    派生类都只有一个基类,称为单继承(SingleInheritance)。除此之外,C++也支持多继承(MultipleInheritance),即一个派生类可以有两个或多个基类。多继承容易让代码逻辑复杂、思路
  • 2022-11-11c++---纯虚类
    /*****************************************************************//***\file源.cpp*\brief**\authorDuan*\dateNovember2022***********
  • 2022-10-17(C++) C++虚函数性能分析
    classbaseA{public:virtualfloatmulTwo(floata,floatb)=0;virtual~baseA()=default;};classvClassA:publicbaseA{public:~vClassA()o