数据结构学习笔记

这段时间开始复习数据结构,疯狂恶补相关知识,做了一些笔记。

1、构造函数,是一种特殊的方法。主要用来在创建对象时初始化对象,即为对象成员变量赋初值,总与new运算符一起运用在创建对象的语句中。特别的事,一个类可以有多个构造函数,根据其参数个数的不同或参数类型的不同来区分它们,即构造函数的重载。

2、cout<<endl ;中,endl表示的是输出流的一个manipulator,在输出后,还负责将输出流清空,而cout<<"/n"; 则只是完成回车的功能,而不负责清空输出流。

3、Debug:调试版本,包含调试信息,所以容量比Release大很多,并且不进行任何优化(优化会使调试复杂化,因为源代码和生成的指令间关系会更复杂),便于程序员调试。Debug模式下生成两个文件,除了.exe或.dll文件外,还有一个.pdb文件,该文件记录了代码中断点等调试信息

Release:发布版本,不对源代码进行调试,编译时对应用程序的速度进行优化,使得程序在代码大小和运行速度上都是最优的。(调试信息可在单独的PDB文件中生成)。Release模式下生成一个文件.exe或.dll文件。

4、void *malloc(unsigned int num_bytes); num_bytes为要申请的空间的大小,申请后空间的值是随机的。

void *calloc(size_t n, size_t size);申请后对空间元素逐个赋值为0。

void realloc(void *ptr, size_t new_Size);ptr为指向原来空间基址的指针,new_size为接下来需要扩充容量的大小。

int *p = (int *)malloc(20*sizeof(int));  
int *pp = (int *)calloc(20, sizeof(int)); 
int *ppp = (int *)realloc(p, size*sizeof(int)); 

5、RSS阅读是将博客、各类网站的文字内容截取出来,推送到你的RSS阅读器上,形成个性化订阅的一种阅读方式。

6、在没有include任何头文件之前,定义下面的宏: #define _CRT_SECURE_NO_DEPRECATE

可以解决提示“使用不安全函数”的问题。

7、size_t fwrite(const void* buffer, size_t size, size_t count, FILE* stream);

返回值:返回实际写入的数据块数目
(1)buffer:是一个指针,对fwrite来说,是 要获取数据的地址
(2)size:要写入内容的 单字节数
(3)count:要进行写入size字节的 数据项的个数
(4)stream:目标文件指针;
(5)返回实际写入的数据项个数count。

8、this是一个指向对象自身的指针。

9、using namespace std;

在标准C++以前,都是用#include<iostream.h>这样的写法的,因为要包含进来的头文件名就是iostream.h。标准C++引入了名字空间的概念,并把iostream等标准库中的东东封装到了std名字空间中,同时为了不与原来的头文件混淆,规定标准C++使用一套新的头文件,这套头文件的文件名后不加.h扩展名,如iostream、string等等,并且把原来C标准库的头文件也重新命名,如原来的string.h就改成cstring(就是把.h去掉,前面加上字母c),所以头文件包含的写法也就变成了#include <iostream>。

并不是写了#include<iostream>就必须用using namespace std;我们通常这样的写的原因是为了一下子把std名字空间的东东全部暴露到全局域中(就像是直接包含了iostream.h这种没有名字空间的头文件一样),使标准C++库用起来与传统的iostream.h一样方便。如果不用using namespace std;使用标准库时就得时时带上名字空间的全名,如std::cout << "hello" << std::endl;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值