C++primer学习笔记

 第一篇C++概述

1、#include <some_file.h>
#include "my_file.h"
如果文件名用尖括号< 和> 括起来表明这个文件是一个工程或标准头文件;如果文件名用一对引号括起来则表明该文件是用户提供的头文件查找该
文件时将从当前文件目录开始

2、条件指示符可防止这种头文件的重复处理例如
#ifndef BOOKSTORE_H
#define BOOKSTORE_H
/* Bookstore.h 的内容 */
#endif

3、assert()是C 语台标准库中提供的一个通用预处理器宏在代码中常利用assert()来判断一
个必需的前提条件以便程序能够正确执行。

必须包含与之相关联的头文件
#include <assert.h>
下面是一个简单的使用示例
assert( filename != 0 );

4、使用头文件的C 名字或者C++名字两种情况下头文件的#include 预处理器指示符的
效果也会不同下面的#include 指示符
#include <cassert>
将cassert 的内容被读入到我们的文本文件中但是由于所有的C++库名字是在名字空间
std 中被定义的因而在我们的程序文本文件中它们是不可见的除非用下面的using 指示
符显式地使其可见
using namespace std;
使用C 头文件的#include 指示符
#include <assert.h>

5、静态与动态内存分配的两个主要区别是
1.静态对象是有名字的变量我们直接对其进行操作而动态对象是没有名字的变量
我们通过指针间接地对它进行操作稍后我们会看到一个例子
2.静态对象的分配与释放由编译器自动处理程序员需要理解这一点但不需要做任何
事情相反动态对象的分配与释放必须由程序员显式地管理相对来说比较容易出错
它通过new 和delete 两个表达式来完成。

int *pint = new int( 1024 );

int *pia = new int[ 4 ];

delete pint;
delete [] pia;

如果忘了删除动态分配的内存又会怎么样呢如果真的如此程序就会在结束时出现
内存泄漏(memory leak 的问题内存泄漏是指一块动态分配的内存我们不再拥有指向这
块内存的指针因此我们没有办法将它返还给程序供以后重新使用现在大多数系统提供
识别内存泄漏的工具可以向系统管理员咨询。)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值