学习经验一点点。。。

2024-06-07 10:32
文章标签 学习 经验 一点点

本文主要是介绍学习经验一点点。。。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

splice与merge最大的不同时,不用排序,也不要求原始链表有序。相同点是,被合并的链表或元素将消失。


基类中若是有纯虚函数  即基类是抽象类 子类继承父类之后  必须实现父类中的纯虚函数 


虚基类不能实例化  但是能声明指针啊。。。。


  
父类中若是也含所有虚函数  可不用在子类中实现  但必须父类中实现。




因为被实例化的类必须要实现他的虚函数(实例化类的虚函数必须有定义,原因如下:有虚函数作为成员函数的类, 它的实例化-对象, 在运行过程分配到的内存不止是它的成员数据, 还有一个指向该类虚函数表(vtable)的指针, 虚函数表中的每个数据项都是一个虚函数的入口地址; 如果一个对象的虚函数只有声明而没有实现, 就会出现这个虚函数表找不到本应作为其数据项之一的某函数的入口地址, 虚函数表在运行前不能装载完成, 所以产生连接错误!)。






若不实例化可以不实现他的虚函数。


若是在子类中再次定义就会覆盖父类的对应的虚函数。。
若在子类中实现的时候只是用了虚函数名函数参数不一致 若不加virtual 父类的虚函数在子类就不会提示成虚函数了(不是斜体了) 会导致父类的对应的虚函数被隐藏,子类调用不了父类的对应的虚函数了。。。。



8进制转化为10进制的方法
十进制 = 八进制/10*8  + 八进制%10;
16位进制转化为10 进制的方法
十进制 = 16进制/10*16 + 16进制%10;






机器字长的局限性
unsigned int a = 0;
unsigned int b = ~0;
unsigned int b =0xffff是不对的。机器字长不确定 
mutex互斥锁用于进程间    临界区  用于线程间




volatile 会被意外的进程改变的变量  每次编译器都要重新读取  阻止编译器对其进行优化。常用在三种情况下
1并行设备的硬件寄存器
2多线程任务中被共享的变量
3中断服务子程序中会访问到的非自动变量


vector的begin()指针指向第一个数字end()指针指向最后一个数字的后一位从后开始要记得.end()-1  到>=begin()或者> begin()


swap()交换两个vector的内容


反向迭代器   reverse_iter 从rbegin开始 到rend结束
常迭代器值能读取数据




t_list1.insert(t_list1.begin(),array+5,array+10);半开半闭区间




t_iter2 = t_list4.begin();
t_iter2++;
t_iter2++;
t_list3.splice(t_list3.begin(),t_list4,t_list4.begin(),t_iter2);
从4中的开始到第二个数据剪切到3中      
t_list3.merge(t_list4);把4的整个数据都剪切到3中  4中数据没了






由于位域不允许跨两个字节,因此位域的长度不能大于一个字节的长度,也就是说不能超过8位二进位。


1.位段成员必须为整型数据,包括有符号数和无符号数;位段的长度为大于等于零的整数常量。
2.位段长度为零的主要目的是使得下一成员从下一存储单元开始存放,本单元没有用完的单元空闲。
3.可以定义匿名字段,此位段仅仅用于占位,而不是使用。其主要的目的是为了满足将来系统升级或扩充的需要。






指针直接操作内存多发生在如下几种情况
 
某I/O芯片被定位在CPU的存储空间而非I/O空间,而且寄存器对应于某特定地址;


两个CPU之间以双端口RAM通信,CPU需要在双端口RAM的特定单元(称为mail box)书写内容以在对方CPU产生中断;


读取在ROM或FLASH的特定单元所烧录的汉字和英文字模。 




/* 定义一个无参数、无返回类型的 */
typedef void (*lpFunction) ( ); 


/* 函数指针类型 */
/*定义一个函数指针,指向*/
lpFunction lpReset = (lpFunction)0xF000FFF0; 


/* CPU启动后所执行第一条指令的位置 */
lpReset(); /* 调用函数 */



这篇关于学习经验一点点。。。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1038920

相关文章

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;