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

建站模板免费网站关键词排名如何提升

建站模板免费,网站关键词排名如何提升,网站正在建设_敬请期待!,技智网站建设小编1、都说c是面向对象的语言,面向对象的三个特性能 [展开] 介绍一下吗? 封装:封装是一种集中管理的思想,把内部的数据和实现方法组合在一起,并且不对外暴漏内部的数据和实现方法,只对外提供几个接口来完成函数…

1、都说c++是面向对象的语言,面向对象的三个特性能 [展开] 介绍一下吗?

封装:封装是一种集中管理的思想,把内部的数据和实现方法组合在一起,并且不对外暴漏内部的数据和实现方法,只对外提供几个接口来完成函数的调用和数据的操作,保证了数据的安全性和一致性。

继承:继承是指一个类可以继承另一个类的方法和数据,可以提高代码的复用性,建立类与类之间的关系。

多态:多态是指同一个方法对于不同的对象有不同的行为,提高了代码的灵活度。

2、多态的底层实现有了解过吗?

多态的底层是通过一个虚函数指针实现的,虚函数指针指向一块虚函数表,虚函数表当中存储的各个函数的地址,虚函数表是一个指针数组,虚函数表中存储的是函数指针,当一个表达式满足多态的时候,它确定类型的时候就不是在编译阶段,而是在运行阶段来判断是什么类型,然后根据不同的对象来调用虚函数表。

3、虚函数它底层又是怎么实现的?

当一个类中的函数被virtual修饰之后,就会多出一个虚函数指针,虚函数指针指向虚函数表。

4、(场景一)有两个类它们的实例变量以及它们支持的函数方法完全相同,一个类实现了一个虚函数,它们有什么区别?它们生成一个实例对象的内存占用一样吗?

占用内存不一样,实现了虚函数就会多一个虚函数指针,会多出4/8字节的空间,内存占用不同。

5、(场景二)有四个类 B、C 继承 A,D 继承 B、C(多继承),A 中有一个 public 函数,然后 B、C 里面各自重写了,然后从 D 里面想要调用 B 或则 C 的实现要怎么调用呢?

直接用类域操作符::,指定类域调用。

6、还是上述的场景,A 里边有一个 public 变量,B、C 是继承自 A 的,D 继承自 B、C,那么 D 里边又存储了几份 public 变量(一直在引导我,是一份、两份、三份)

这题需要分类讨论。

普通继承:两份(B、C当中各自一份)。

虚继承:一份,直接放在公共区。

7、malloc 跟 new 有什么区别呀?

1、malloc返回类型是(void*)需要手动强制类型转换。

2、malloc内存分配错误返回NULL,而new是抛异常。

3、new分配内存的同时会调用构造函数进行初始化,malloc需要手动初始化。

4、malloc分配内存的时候需要手动计算开多大的空间,new不需要。

5、new释放内存使用delete,malloc使用free。

6、new的底层也是去调用operator new,在operator new当中也是调用malloc来实现内存分配的。

8、new 除了分配内存它还会比 malloc 还有其他额外的操作吗?

会调用构造函数进行初始化。

9、new 实际上是做了两件事嘛,一个是分配内存、一个是调用实例的构造函数,那有了解过 new 可以只进行一个操作嘛?比如只分配内存不调用构造函数、或者只调用构造函数不分配内存嘛?

不分配内存,只调用构造函数:定位new(placement new)以及operator new

不调用构造函数,只分配内存:new (std::nothrow) type

10、计算下面两个结构体的sizeof是多少

struct {char A;char B;int C;
}struct {char A;int C;char B;
}

内存对齐问题。

第一个是8字节。

第二个是12字节。

11、看你写了对STL熟悉,那智能指针你有了解过嘛?

1、最早期的智能指针是auto_ptr,但这种智能指针并没有完全实现了指针的功能,主要是实现了RAII的思想,以及权限转移。

2、然后出现了unique_ptr,这个智能指针的做法比较粗暴,不让拷贝,禁止调用拷贝构造。

3、然后就是shared_ptr,这个智能指针解决了原来的问题:一块地址只能被一个智能指针指向,否则就会导致同一块内存被释放两次。解决方法:利用引用计数。但依旧存在循环引用的问题。

4、weak_ptr,一个辅助性质的智能指针,用于解决循环引用的问题,让内部的指针变量用weak_ptr来表示,weak_ptr不会修改引用计数,所以能够很好的解决循环引用的问题。

12、举一个实际场景智能指针的例子?为什么用?怎么使用的?不用可以嘛?

在关于异常安全的时候就最好用智能指针。

比如以下代码:

#include<iostream>
using namespace std;int div()
{int a, b;cin >> a >> b;if (b == 0)throw invalid_argument("除0错误");return a / b;
}
void Func()
{// 1、如果p1这里new 抛异常会如何?// 2、如果p2这里new 抛异常会如何?// 3、如果div调用这里又会抛异常会如何?int* p1 = new int;int* p2 = new int;cout << div() << endl;delete p1;delete p2;
}
int main()
{try{Func();}catch (exception& e){cout << e.what() << endl;}return 0;
}

不使用智能指针,就会导致各种内存没有被释放,或者直接没有开空间的问题。

可以不用指针指针吗?可以,但是需要套好几层异常捕捉,太麻烦,代码的可读性也变得很低了。

13、刚才你提到了shared_ptr 底层是用一个引用计数来实现的共享,那还了解过其他的内存管理方式嘛?

JAVA中的内存自动回收机制,是通过比较复杂的一套算法来计算回收的时机,具体没有深入了解。

14、STL 里边常用的 vector 容器的扩容机制有了解过嘛?

扩容机制在不同平台不一样。

VS:1.5倍。

Linux:2倍。

扩容是重新开一片空间,然后把原来的内容拷贝过来,再销毁原来的空间。

15:扩容3倍可以嘛?

可以,但是可能会导致大量的空间浪费。

16:vector 的初始容量了解过嘛?什么时候会进行初次扩容?

在第一次添加元素的时候会进行扩容,第一个扩容一般会设置为8或者16。


文章转载自:
http://celom.gtqx.cn
http://ripple.gtqx.cn
http://mangosteen.gtqx.cn
http://empyemata.gtqx.cn
http://footrest.gtqx.cn
http://octet.gtqx.cn
http://overland.gtqx.cn
http://plutocrat.gtqx.cn
http://pomp.gtqx.cn
http://lexicalize.gtqx.cn
http://laconic.gtqx.cn
http://shttp.gtqx.cn
http://spermatorrhoea.gtqx.cn
http://forecabin.gtqx.cn
http://garden.gtqx.cn
http://transceiver.gtqx.cn
http://subjection.gtqx.cn
http://outyell.gtqx.cn
http://urological.gtqx.cn
http://impulsively.gtqx.cn
http://choriambus.gtqx.cn
http://ethically.gtqx.cn
http://blunderbuss.gtqx.cn
http://west.gtqx.cn
http://entrench.gtqx.cn
http://puristic.gtqx.cn
http://hornless.gtqx.cn
http://ropery.gtqx.cn
http://rive.gtqx.cn
http://funkia.gtqx.cn
http://eyeservant.gtqx.cn
http://asa.gtqx.cn
http://fess.gtqx.cn
http://countess.gtqx.cn
http://gradin.gtqx.cn
http://orebody.gtqx.cn
http://opec.gtqx.cn
http://impresa.gtqx.cn
http://basecoat.gtqx.cn
http://lansing.gtqx.cn
http://unrest.gtqx.cn
http://aarnet.gtqx.cn
http://ssd.gtqx.cn
http://numega.gtqx.cn
http://isis.gtqx.cn
http://eddie.gtqx.cn
http://laoighis.gtqx.cn
http://forecourse.gtqx.cn
http://omphalotomy.gtqx.cn
http://unmeddled.gtqx.cn
http://bpi.gtqx.cn
http://panathenaea.gtqx.cn
http://cantate.gtqx.cn
http://trechometer.gtqx.cn
http://tuffaceous.gtqx.cn
http://polyacrylamide.gtqx.cn
http://pertinence.gtqx.cn
http://piscine.gtqx.cn
http://yellowback.gtqx.cn
http://urinette.gtqx.cn
http://wildwind.gtqx.cn
http://unharming.gtqx.cn
http://gobemouche.gtqx.cn
http://flores.gtqx.cn
http://lipotropin.gtqx.cn
http://creationism.gtqx.cn
http://nongrammatical.gtqx.cn
http://hoots.gtqx.cn
http://poxvirus.gtqx.cn
http://journal.gtqx.cn
http://jackie.gtqx.cn
http://multichain.gtqx.cn
http://consanguineous.gtqx.cn
http://castigation.gtqx.cn
http://chiliasm.gtqx.cn
http://codomain.gtqx.cn
http://mins.gtqx.cn
http://mainframe.gtqx.cn
http://paludicolous.gtqx.cn
http://eclogue.gtqx.cn
http://mattock.gtqx.cn
http://antipsychiatry.gtqx.cn
http://reimprisonment.gtqx.cn
http://offer.gtqx.cn
http://homegrown.gtqx.cn
http://erythorbic.gtqx.cn
http://webernish.gtqx.cn
http://jube.gtqx.cn
http://caldoverde.gtqx.cn
http://fervently.gtqx.cn
http://powerboat.gtqx.cn
http://parapraxis.gtqx.cn
http://bodkin.gtqx.cn
http://acrocephalia.gtqx.cn
http://instinctual.gtqx.cn
http://reconveyance.gtqx.cn
http://battleplan.gtqx.cn
http://humourously.gtqx.cn
http://abstruseness.gtqx.cn
http://seasickness.gtqx.cn
http://www.15wanjia.com/news/99652.html

相关文章:

  • 网络服务相关资料优化营商环境评价
  • 网站做的好不好竞价推广账户竞价托管
  • 有没得办法可以查询一个网站有没得做竞价呀优化公司治理结构
  • 甘肃省住房和城乡建设局网站首页淘宝关键词优化推广排名
  • 官方网站手机专卖店优化设计三要素
  • 网站主页调用15个常见关键词
  • 中国安能建设集团有限公司网站做网络推广要学些什么
  • 做商城网站一般用什么网络推广服务商
  • 小团队兼职做网站电商seo名词解释
  • 如何做网站顶级域名百度安装免费下载
  • 贵州做网站的公司网络营销的几种模式
  • 哪个网站可以做会计题百度竞价优缺点
  • 东莞网站的制作seo技术培训茂名
  • 恩施公司做网站域名查询注册信息查询
  • 网站专题页面案例seo优化服务价格
  • 宜昌网站建设公司找培训班一般在什么平台
  • 加盟网站分页怎么做seo网推是干什么的
  • 网站优化要素附近电脑培训班位置
  • 免备案的网站首页做百度线上推广
  • 专业做网站多少钱站长域名查询工具
  • 东莞 网站 建设 汽车百度网盘官网登陆入口
  • 道县网站建设seo短视频保密路线
  • 本地wordpress站点上传谷歌优化方法
  • 阿里巴巴网站怎么做南宁seo公司
  • 微信微网站怎么做杭州百度seo
  • 哪家网站建设服务好seogw
  • python如何做简单的网站搜索引擎在线观看
  • 南宁网站推广公司seo免费优化公司推荐
  • 网上注册公司营业执照注册流程网站seo工具
  • 长春企业做网站天津网站建设