C5.cpp
- (1)不要使用delete来释放不是new分配的内存(2)不要使用delete来释放同一个内存块两次(3)若用new[]分配内存 ,则应该用delete[]来释放(4)若用new分配内存 ,则应该用delete来释放(5)对空指针应用delete是安全
- 不能使用sizeof运算符来确定动态数组包含的字节数
- 指针的值可以修改,但是数组名是常量不能修改
- 对数组应用sizeof得到的是数组的长度,但是对指针应用的话得到的是指针的长度,即使指针指向的是一个数组
- 对于char*类型的变量一定要使用强制类型转换符int*才能够输出地址
- 如果结构标识符是结构本身就使用句点运算符,如果是指针的话就用箭头运算符
- 管理数据内存的方式:自动(局部变量LIFO),静态(在函数外定义它或者使用的是tatic),动态(内存池==存储空间+堆------------new和delete----------在内存中不连续使得跟踪新分配内存 位置更加困难)
- 内存泄漏:用new分配完内存空间后忘记用delete释放,即使含指针的内存由于作用域规则和对象生命周期的原因而被释放,那么这片内存在以后仍然无法被使用(这有时会产生很严重的影响)
- Vector:(1)包含头文件<vector> (2)在namespace名称空间中(3)使用不同的语法来指出它存储的数据类型(4)vector使用不同的语法来指定元素数
- vector<typename>vt(n_elem)功能虽然强大但是效率很低
- array长度固定,静态的内存,效率与数组相同,需要包含头文件<array>
- array<typename,n_elem>a;n_elem不能是变量
- **用法
struct a{
int x;
}a1,a2,a3;
int main()
{
a1.x=1;
a2.x=3;
a3.x=5;
a *s[3];-----------------------------------------------------s是一个指针数组
s[0]=&a1;
s[1]=&a2;
s[2]=&a3;
a**p=s;----------------------p是指向指针数组的指针,那么*p就是结构指针
cout<<(*p)->x;;
}
C5.cpp的更多相关文章
- recovery uncrypt功能解析(bootable/recovery/uncrypt/uncrypt.cpp)
我们通常对一个文件可以直接读写操作,或者普通的分区(没有文件系统)也是一样,直接对/dev/block/boot直接读写,就可以获取里面的数据内容了. 当我们在ota升级的时候,把升级包下载到cach ...
- 使用“Cocos引擎”创建的cpp工程如何在VS中调试Cocos2d-x源码
前段时间Cocos2d-x更新了一个Cocos引擎,这是一个集合源码,IDE,Studio这一家老小的整合包,我们可以使用这个Cocos引擎来创建我们的项目. 在Cocos2d-x被整合到Cocos引 ...
- Json CPP 中文支持与入门示例
在每一个Json Cpp自带*.cpp文件头加上: #include "stdafx.h" 将Json Cpp对自带的头文件的引用修改为单引号方式,例如json_reader.cp ...
- cpp 调用python
在用cpp调用python时, 出现致命错误: no module named site , 原因解释器在搜索路径下没有找到python库.可以在调用Py_Initialize前,调用 Py_Se ...
- nginx+fastcgi+c/cpp
参考:http://github.tiankonguse.com/blog/2015/01/19/cgi-nginx-three/ 跟着做了一遍,然后根据记忆写的,不清楚有没错漏步骤,希望多多评论多多 ...
- APM程序分析-ArduCopter.cpp
该文件是APM的主文件. #define SCHED_TASK(func, rate_hz, max_time_micros) SCHED_TASK_CLASS(Copter, &copter ...
- APM程序分析-AC_WPNav.cpp
APM程序分析 主程序在ArduCopter.cpp的loop()函数. /// advance_wp_target_along_track - move target location along ...
- Dev Cpp 输出中文字符问题
最近 c++ 上机作业,vc++6.0 挂了没法用,只好用 Dev Cpp 先顶替一下,然而在遇到输出中文字符的时候出现了乱码的情况,但这种情况又非常诡异.于是简单了解了一下写成此博客. [写在前面] ...
- 【安卓】aidl.exe E 10744 10584 io_delegate.cpp:102] Error while creating directories: Invalid argument
这几天在使用.aidl文件的时候eclipse的控制台总是爆出如下提示: aidl.exe E 10744 10584 io_delegate.cpp:102] Error while creatin ...
随机推荐
- Mesh内存分配器的mmap小技巧
最近看了一篇内存分配器的论文,原理很简单,但是里面的数学论证还没看懂,这次先简单写一下原理和用到的API. 内存分配器是用于封装操作系统提供的底层API,给应用程序提供动态内存的.内存不断申请释放后, ...
- ZoomCharts
net chart 配置links没有id的话,画图的links会丢失
- hashlib,hmac,subprocess,configparser,xlrd,xlwt,xml模块基本功能
hashlib模块:加密 import hashlib# 基本使用cipher = hashlib.md5('需要加密的数据的二进制形式'.encode('utf-8'))print(cipher.h ...
- JSF生命周期&Facelets的生命周期
1.JSF生命周期 1)恢复视图(Restore View) 视图表示组成特定页面的所有组件.它被保存在 客户端(通常存储在隐藏字段中)或服务器中(通常在会话中).根据请求访问的视图ID(页面地址), ...
- html5 知识点简单总结02
三个列表: 1.无序列表 默认样式 实心小圆点 ul type属性 "square" 实心方形 type属性 "circle" 空心圆 type属性 &q ...
- 改变一下主要发博的方向吧...转scratch!
因为expression2实在是没什么好说的,BUI,水滴鱼大佬还有其他贴吧上的大佬,实在是多得不行,我一个小人物也说不了什么,然而scratch我却可以多发发脚本,思路,美工啊等等.所以以后我就主要 ...
- 名字top500字典 各种格式及python脚本
原文件名字top500 链接: https://pan.baidu.com/s/1cv0jPYb1-EBceoZz3QNvgg 密码: bat5 中文名字 链接: https://pan.baidu. ...
- vue-cli项目在IE下运行钩子函数抛出异常“ReferenceError: “Promise”未定义"”的解决办法
兼容IE是个坑,低版本IE很多都没法跑起来 问题现象:vue-cli项目在IE下运行,会在钩子函数出现 ReferenceError: “Promise”未定义 解决办法: step1:安装最新的we ...
- day-13装饰器
函数的嵌套定义 概念:在一个函数的内部定义另一个函数 为什么要有函数的嵌套定义:1)函数fn2想直接使用fn1函数的局部变量,可以将fn2直接定义到fn1的内部,这样fn2就可以直接访问fn1的变量2 ...
- 第5章 Hyperledger Fabric功能
Hyperledger Fabric is a unique implementation of distributed ledger technology (DLT) that delivers e ...