c++基础学习
c++基础部分
Sahm5k
这个作者很懒,什么都没留下…
展开
-
定位(placement) new
概念、举例普通new:在堆上找到空闲空间,分配给对象定位new:由程序员指定地址,进行地址分配给指针语法:分配一个typename类型大小的空间typename* p= new(address) typename;分配10个typename大小的空间typename* p=new(address) typename[10];typename:类型名,address:指定分配的地址char buff[64];//栈上空间 buff为数组首地址int main() { in原创 2022-02-16 18:28:27 · 571 阅读 · 0 评论 -
c++向上转型与向下转型(dynamic_cast)
向上转型定义:向上转型是子类指针转换成父类指针例如: class parent {}; class son:public parent { };//Son转换成Parent向上转型是多态的基础,可以直接进行类型转换。2. 向下转型定义:父类指针向下进行类型转换成为子类指针若直接进行向下转换(Son* s=new Parent())会因为指针步长的问题(将短指针赋值给长指针)而出现类型转换错误。向下转型一般用于多态中的父类指针转向子指针。因为在进行多态时,通常以父类指.原创 2021-06-22 19:38:06 · 3851 阅读 · 1 评论 -
二叉树基础
1.二叉树注:图来自STL源码解析-侯捷二叉树:每个节点包含一个左子节点,一个右子节点。左右子节点均可能为空。2.二叉搜索树定义:任何节点满足:左节点值<本节点值<右子节点值性质:从根节点一直找其左子节点,找到最后就是二叉搜索树的最小节点。从根节点一直找其右子节点,找到最后就是二叉搜索树的最大节点。插入、访问时间O(log n)最坏情况访问时间为O(n),在若干次操作后二叉搜索树变成单边(全部在左节点或者右节点)插入操作:删除操作:3.平衡二叉树平衡的原创 2020-11-22 11:19:13 · 203 阅读 · 0 评论