博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一个常见的错误时编写代码
阅读量:5255 次
发布时间:2019-06-14

本文共 2418 字,大约阅读时间需要 8 分钟。

实验室阶段做练习,其中,变化bug称号:
#include 
#include
int main(int, char**){ std::vector
** ppRandomData = distributeRandomInt(100); for (unsigned int i=0; i<1000; i++) { if (ppRandomData[i]) { std::cout << "Elements in [" << i << "] : "; for (unsigned int k=0; k
size(); k++) { std::cout << ppRandomData[i]->at(k) << " "; } std::cout << std::endl; } } delete[] ppRandomData; return 0;}std::vector
** distributeRandomInt(int vMod){ assert(vMod > 0); std::vector
**ppContainer; ppContainer = new std::vector
*[vMod]; srand(0); for (int i=0; i<1000; i++) { int RandomNum = rand(); std::vector
*pContainer = ppContainer[RandomNum%vMod]; if (pContainer = NULL) { pContainer = new std::vector
; } pContainer->push_back(RandomNum); } return ppContainer;}

这个题考了几个考点:

1 首先申请数组指针时一定要记得初始化数组中每个成员

2指针域指针之间的赋值与引用

3= 与==的差别

4内存泄露 :释放指针 与释放指针的指针

5 这个migic number

改动例如以下:

#include 
//add#include
#include
std::vector
** distributeRandomInt(int vMod);const int Total = 100;int main(int, char**){ std::vector
** ppRandomData = distributeRandomInt(100); //for (unsigned int i=0; i<1000; i++) for (unsigned int i=0; i<100; i++)//100 migic number { if (ppRandomData[i]) { std::cout << "Elements in [" << i << "] : "; for (unsigned int k=0; k
size(); k++) { std::cout << ppRandomData[i]->at(k) << " "; } std::cout << std::endl; } } for (int i=0; i<100; ++i) { if (ppRandomData[i] != NULL) delete ppRandomData[i];//释放数组中每一块申请的内存 } delete[] ppRandomData; return 0;}std::vector
** distributeRandomInt(int vMod){ assert(vMod > 0); std::vector
**ppContainer; ppContainer = new std::vector
*[vMod]; for (int i=0; i
*pContainer = ppContainer[RandomNum%vMod]; std::vector
*& pContainer = ppContainer[RandomNum%vMod];//指针的引用,要改变指针的值 //if (pContainer = NULL) if (pContainer == NULL)// = 与==的差别 { //pContainer = new std::vector
; pContainer = new std::vector
; } pContainer->push_back(RandomNum); } return ppContainer;}

版权声明:本文博主原创文章,博客,未经同意不得转载。

转载于:https://www.cnblogs.com/bhlsheji/p/4868285.html

你可能感兴趣的文章
[ROS] Chinese MOOC || Chapter-4.4 Action
查看>>
简单的数据库操作
查看>>
iOS-解决iOS8及以上设置applicationIconBadgeNumber报错的问题
查看>>
Redmine
查看>>
帧的最小长度 CSMA/CD
查看>>
xib文件加载后设置frame无效问题
查看>>
编程算法 - 左旋转字符串 代码(C)
查看>>
IOS解析XML
查看>>
Python3多线程爬取meizitu的图片
查看>>
树状数组及其他特别简单的扩展
查看>>
zookeeper适用场景:分布式锁实现
查看>>
110104_LC-Display(液晶显示屏)
查看>>
httpd_Vhosts文件的配置
查看>>
php学习笔记
查看>>
普通求素数和线性筛素数
查看>>
PHP截取中英文混合字符
查看>>
【洛谷P1816 忠诚】线段树
查看>>
电子眼抓拍大解密
查看>>
poj 1331 Multiply
查看>>
tomcat7的数据库连接池tomcatjdbc的25个优势
查看>>