当前位置: 首页 > wzjs >正文

网站模块设计怎么做下载谷歌浏览器

网站模块设计怎么做,下载谷歌浏览器,扬州网页设计培训,西安专业网站建设服务好前言 蓝桥杯考完了,博主考的细碎,第一次参加编程比赛问题和错误出现了很多,主要原因还是练的太少。等明年蓝桥杯的时候再接着算法的更新吧。打完蓝桥杯了之后博主现在的主要目标是学习C,主要会更新一些语法上的知识,本…

前言

蓝桥杯考完了,博主考的细碎,第一次参加编程比赛问题和错误出现了很多,主要原因还是练的太少。等明年蓝桥杯的时候再接着算法的更新吧。打完蓝桥杯了之后博主现在的主要目标是学习C++,主要会更新一些语法上的知识,本来最开始学C语言和数据结构的时候就准备更新来着,因为大一上忙这忙那就懒得更新了,数据结构部分我想在我们学校学习的时候更新,就是一些用C语言模拟实现的一些数据结构,栈,堆,队列,二叉树等,现在我正在学习C++,就开始进行C++的更新了,更新的内容和我学习的一致,绝对会包含学校学的知识点,目前学校学习了类,引用,模板,重载运算符等知识,我认为这些不算太复杂就没写博客,我会在这篇文章中指出一些注意事项,下一篇就是正式语法的更新(应该是继承)


1.protected 和 private

1.对于protected 和 private在继承这个语法里面有明显区别,其他情况下区别并不大,具体区别下一节继承会讲,不论继承的话,可以这么说,protected为未来继承预留了访问接口(还是继承

2.class

2.class 不写访问限定符类成员默认为private,而struct默认为public,平常为了图方便,可以使用struct,或者这样,这种自己看看就行,如果要上传git或者找工作的时候,private还是要区分开的,不希望被类外面直接访问的元素还是要加private

class a {public:
};

3.结构体size

3.关于类对象size大小的计算
//别告诉我直接sizeof就出来了奥(
这个设计到结构体内存对齐规则,一共有四条
1.第一个成员与结构体变量偏移量为0的地址处
2.其他成员变量要对齐到对齐数的整数倍的地址处
(对齐数 : 编译器默认对齐数与该成员大小的较小值 (Vs中默认对齐数的值为8))
3.结构体总大小为最大对齐数的整数倍
4.如果嵌套了结构体,嵌套的结构体对齐到自己的最大对齐数的整数倍处,结构体的整体大小就是所有最大对齐数的整数倍
举个例子就懂了
在这里插入图片描述
这里会输出16,根据规则,w四个字节,c一个,d八个,记住对齐数是和编译器默认的取小,所以w和c正常放进去(w是最开始的放在起点,c的字节数是1,对齐数取小就是1,任何数都是1的倍数,那他接着放在5就可以了),放d的时候,对齐数是8,其他成员变量要对齐到对齐数的整数倍的地址处,所以d起点是8,大小是8,所以最后size是16

4.关于初始化的一些问题

class Person {
public:Person():age(18),GPA(2.0),name("..."){}
private:string name;int age;double GPA;
};
int main()
{return 0;
}

那我问你,初始化的顺序是什么?
age -> GPA -> name?
其实不然
是声明的顺序
name-> age -> GPA
你可能会说了,那你问我,有啥区别啊,反正都初始化成功了,那我再问你,看下图
在这里插入图片描述
还觉得没问题吗?当一个依赖于另一个成员变量初始化的时候就要注意顺序了

5.关于this指针

this 指针是一个隐含的指针,存在于每个非静态成员函数中,它指向调用该成员函数的对象。借助 this 指针,你可以在成员函数内部访问当前对象的成员。
this指针并不存在于对象中!!!只是调用函数的时候通过形参来传入的

6.构造函数

编译器:对内置类型不做处理
,对自定义类型会调用它的默认构造函数
所以,一定别默认一个int类型的变量就是0了,要初始化!!!!

7 static

那我先问你,static修饰的变量存在于什么区?—静态区
在这里插入图片描述

静态成员为所有类对象所共享,不属于某个具体的对象,存放在静态区
静态成员变量必须在类外定义,定义时不添加static关键字,类中只是声明
静态成员函数没有this指针
初始化static成员:

在这里插入图片描述
只能这么初始化!!!

8 深拷贝和浅拷贝

什么是深拷贝? 什么是浅拷贝?
通俗一点:浅拷贝只拷贝了数据,没有额外开辟空间,他们的指针成员变量指向了同一块内存,如下图
在这里插入图片描述
会不会有问题呢?
当然会,这两个对象被销毁时,同一块空间会被释放两次,程序就崩溃了
所以要有深拷贝,深拷贝就是为他开辟一块空间来存放数据,相对来说更安全,浅拷贝更方便

class a {
public:int* ptr;a(){ptr = new int(10);}a(const a& other){ptr = new int(*other.ptr);}
};
int main()
{a a1;a a2 = a1;getchar();return 0;
}

9.const

首先知道下const 和 static的区别
static主要修饰存储类型和作用域,“静态”
const修饰----“只读”
在这里插入图片描述
常用于函数参数,避免拷贝并防止修改

void print(const int& value)

在类里面
声明为const的成员函数不能修改类的非静态成员,防止出问题
非const成员可以调用const成员函数
但const成员只能调用const成员函数
下一个:权限不能放大!
在这里插入图片描述
非const < const --权限可以缩小 但是不能放大
有人会整出这么一份代码
在这里插入图片描述
这样涉不涉及到权限放大呢?当然没有,这是把10这个值赋值给了p
如果想func() = 2;当然就错了
还有一句,临时变量具有常性,常性类似于const
比如

const int func()
{return 1;
}int func()
{  
return 1;
}
没有什么本质区别

10引用 和 指针区别

引用不占用内存空间,而指针本身需要占用一定的内存空间来存储所指向变量的地址。
其他区别没什么好说的,注意不要随便返回引用,如
在这里插入图片描述
因为局部变量和临时变量出了声明周期就会被销毁,而你想去返回被销毁的东西当然会有问题,答案正确只是一些优化罢了
下面是一些八股文
在这里插入图片描述
五一可能会更新继承,就这样吧,作为C++语法的第一期水一水()

http://www.dtcms.com/wzjs/486230.html

相关文章:

  • java做网站开发成本高十大广告联盟
  • 找做网站公司经验磁力猫torrentkitty官网
  • 台州市城乡建设规划局网站网络销售技巧和话术
  • iis建设的网站无法访问百度教育官网
  • 用空间做网站如何做好安全西安竞价托管公司
  • 东莞网站建设公司企业360识图
  • 珠海品牌机械网站建设2023新一轮病毒叫什么名字
  • 新疆住房和城乡建设部网站新站点seo联系方式
  • 华人频道青岛网站考研培训机构排名
  • 外贸网站外贸网站建设行吗西安优化seo
  • 海珠区建网站公司花都网络推广seo公司
  • 竞价网站与竞价网站之间做友情链接广告联盟怎么赚钱
  • 重庆门户网站长沙优化排名推广
  • phpcms网站seo怎么做宁波seo
  • 又做投资的网站吗最近军事新闻热点大事件
  • 简单网站制作惠州seo排名外包
  • 餐饮手机微网站怎么做矿坛器材友情交换
  • 珠海网站建seo搜索引擎优化教程
  • 企业高端网站建设公司网站seo公司
  • 上海人才网最新招聘信息官方网站苹果aso优化
  • python建设网站实例网站seo教材
  • 有没有专门做建筑造价的私单网站福州百度推广电话
  • 网络工程师工作张家口网站seo
  • 网站建设平台计划书郑州百度快照优化
  • 智能手表网站百度联盟app
  • 淘宝可以在哪些网站上面打做推广上海优化外包公司排名
  • wordpress 代码特征优化大师是什么意思
  • 长沙市建设发展集团有限公司网站什么软件可以免费发广告
  • 网站建设推广公司需要哪些岗位软文代写多少钱一篇
  • 网站建设公司讯息东莞优化网站制作