关于c++的一些自我认识(2)

接上篇:

1.若写成for(int a=0; ;a++)则a的生命周期只在for循环内,若写成int a;for(a=0; ;a++)则可以在外部继续使用a

2.  私有成员设置成指针和数组的区别:
  指针只分配一个地址单元,用来存放地址。
  数组分配n个单元,用来存具体的值。
  所以你要是想把main中的一个数组的值初始化给私有成员,那么私有成员
  1:定义成数组,
  2:动态分配内存给指针,但必须写上分配多少(大于等于数组大小的内存)即int x=new x[100]或者200等等。
  否则出现bus error错误(C4droid上报这个错误)

3.析构函数或者delete一块为空的内存时,会报错.所以若两个以上指针指向一块内存,用析构或者两次delete时会报错

4.基类a,派生b,c;b,c又被d继承,则a中的成员e在d中被调用时,必须加上b::e或者c::e,否则二义性;它的层次图像一个v;但若是使用虚基类,则e只会被调用一次。它的形状图像为一个菱形.这种三段的层次下才考虑虚基

5.(类型)对象可以用来转换格式,如char x='a';则(int)x的值为97

6.无论何时都不是按照成员初始化列表的顺序执行,是和公有继承的顺序以及类中定义的成员顺序有关

7.no matching function for表示类中没有为所有定义的成员构造函数.如定义一个f x;那么类中必须有f(){}为它构造

8.throw相当于return,把异常信息类型返回给上一级,但这个返回值只能被catch捕捉.已经是最上级即主函数里的throw则不返回,而是直接用主函数

的catch处理

9.递归中如int k=1;f(k,2){f(k+1,2);cout<<k;}中执行完f(k+1,2)回代后继续执行下一条语句,但此时的k不会执行k+1即仍然为1而不是2,即递归回代

后跳过那条递归语句以及它的一切影响

10.全排列核心算法
for(i = k; i <= m; i++) //for循环和递归的合作,i=k而不是等于0,否则有重复

swap(&list[k], &list[i]); //第一次不会交换,但由于在for循环中,必然会全部交换一次
perm(list, k + 1, m);//回代判断是否满足输出条件
swap(&list[k], &list[i]); //复原每一次交换,防止顺序引起的错误


Python网络爬虫与推荐算法新闻推荐平台:网络爬虫:通过Python实现新浪新闻的爬取,可爬取新闻页面上的标题、文本、图片、视频链接(保留排版) 推荐算法:权重衰减+标签推荐+区域推荐+热点推荐.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值