??:具备隐式返回操作,不用return也行。 赋值 浅拷贝 深拷贝 共享,就解决了以上代码内存消耗的问题。 __proto__: 内部属性,查找当前对象的原型对象。 在原型链上 一直往上找,内层(对象自身的),次外层,最外层, 优先展示内层的。 尽量少使用__proto__??? 以上,数组身上的 ...
分类:
编程语言 时间:
2020-07-12 13:55:17
阅读次数:
67
直奔主题,最近项目上接触了FDCAN,主控为STM32H743。在开发过程中存在疑点,特此记录。 疑点:芯片手册上,波特率的相关寄存器位标明硬件将该值解析为编程值加 1,但是实际上通过STM32 HAL库的HAL_FDCAN_Init()函数来初始化FDCAN时,我们给FDCAN初始化结构体的成员变 ...
分类:
其他好文 时间:
2020-07-11 21:03:41
阅读次数:
163
Python中的变量 Python中的变量可以看作数值的一个标签,当给变量赋值时,该变量将指向该值域的存储空间,给该变量重新赋一个新值时,将释放当前值域的存储空间,指向另一个值域存储空间。 对于Python来说是以值域为内存分配对象,变量名只是指向该内存空间,当值域发生变化时,系统分配另外一块内存, ...
分类:
编程语言 时间:
2020-07-11 00:02:08
阅读次数:
68
说到什么是深浅拷贝,就不得不说python中赋值的含义,赋值并不是拷贝,而是将target和object建立了一种联系,当一个object可变时,连接该object的任意一个target改变该object值都会影响其他连接该object的target的取值。如: >>> a=[1,2,3] >>> ...
分类:
编程语言 时间:
2020-07-10 22:37:33
阅读次数:
82
前言 C#调用C++的dll已经不是第一次遇到了,然而这一次需要传递复杂结构,果然在过程中遇到了问题。 发现问题 这里我们有一个C++的导出方法,里面会传递一个结构体,并且是一个嵌套结构体。 相信大部分人都看不出来有什么问题,在我传递参数到C++内部后,我发现sCalleeId的值是空的。于是开始查 ...
分类:
编程语言 时间:
2020-07-10 13:18:51
阅读次数:
64
写在前面:关于深浅拷贝,首先要理解一点,深浅拷贝都是针对引用数据类型而言的(Array、Object)。 浅拷贝 浅拷贝的意思是只复制对象的引用地址,并未复制真正的值。 //声明一个对象,一个数组 let obj = {a:"aa",b:"bb"} let array = [1,2] //分别定义一 ...
分类:
Web程序 时间:
2020-07-10 11:34:32
阅读次数:
69
C++-Struct string初始化&&map初始化 July 10, 2020 2:16 AM swap:vector map stdvector().swap(m_vStruct); stdvector().swap(m_mStruct); struct memset 结构体成员有strin ...
分类:
编程语言 时间:
2020-07-10 09:48:16
阅读次数:
73
一:进程管理 1:进程的定义: 进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。 2:进程的状态: 3:进程控制块 当一个进程被创建时,系统就为该进程建立一个task_struct任务结构体。 当进程运行结束时,系统撤消该进程的任务结构体。进程的任务结构体是进程存在的唯一标志。进程 ...
分类:
其他好文 时间:
2020-07-09 22:41:42
阅读次数:
179
比较操作符'=='表示比较对象间的值是否相等,而'is'表示比较对象的标识是否相等,即它们是否指向同一个内存地址。 比较操作符'is'效率优于'==',因为'is'操作符无法被重载,执行'is'操作只是简单的获取对象的ID,并进行比较;而'=='操作符则会递归地遍历对象的所有值,并逐一比较。 浅拷贝 ...
分类:
编程语言 时间:
2020-07-09 19:36:44
阅读次数:
72
由于struct没有对成员的访问权限进行控制,必须加入额外的机制进行访问控制,这样一来就使得程序复杂化了,所以只能放弃访问权限的控制。1)对于类的数据成员可以直接转为C中结构体的数据成员。2)函数则需转化为对应的函数指针,因为struct里不允许出现函数的声明和定义。而函数前如果有virture,inline等修饰符也要去掉,如函数voidfunca(inta);改为void(funca)(str
分类:
编程语言 时间:
2020-07-09 09:25:53
阅读次数:
81