#include <iostream>
#include <stdio.h>
#include <memory.h> using namespace std;
const int NN = ;
class Piece
{
private:
int r;
int c;
int** p;
public:
Piece()
: r(), c()
{
p = nullptr;
}
Piece(int r, int c, int (*pp)[NN])
{
this->r = r;
this->c = c;
this->p = new int*[r]; for(int i = ; i < r; i++)
{
this->p[i] = new int[c];
memcpy(this->p[i], pp[i], c * sizeof(int));
}
}
~Piece()
{
cout<<"delete"<<endl;
for(int i = ; i < r; i++)
delete[] p[i];
delete this->p;
}
int getR()
{
return this->r;
}
int getC()
{
return this->c;
}
int ** getP()
{
return this->p;
} }; int N;
int r, c;
int m[][];
Piece piece[NN];
int pi = ;
void dump()
{
for(int i = ; i < pi; i++)
{
for(int j = ; j < piece[i].getR(); j++)
{
for(int k = ; k < piece[i].getC(); k++)
{
cout << piece[i].getP()[j][k];
}
cout << endl;
}
cout << endl;
}
}
int main()
{
freopen("d://1.text", "r", stdin);
while (cin >> N && N)
{
memset(m, , sizeof(m));
memset(piece, , sizeof(piece));
int p[NN][NN];
pi = ;
for(int i = ; i <= N; i++)
{
scanf("%d %d", &r, &c);
for(int j = ; j < r; j++)
for(int k = ; k < c; k++)
{
char t;
cin >> t;
if(t == '')
p[j][k] = ;
else
p[j][k] = i;
}
Piece pp(r, c, p);
piece[pi++] = pp;
cout<<"for end"<<endl;
}
}
//dump();
return ; }

输出

for end  //循环结束输出
delete   //删除pp对象
main end //main函数结束

//下面是5个delete 和 const int NN=5对应

delete 
delete
delete
delete
delete

//所以, delete 0 永远都是安全的

//注意前面有个

memset(piece, 0, sizeof(piece));

写了一个bug----使用已经被删除的内存的更多相关文章

  1. NDK中使用pthread多线程中自己写的一个BUG

    在使用pthread进行NDK中的多线程开发时,自己写了一个BUG, void *darkGrayThread(void *args) { ThreadParam *param = (ThreadPa ...

  2. 写了一个bug,最后却变成了feature,要不要修呢?

    事情是这样子的,前不久接到一个需求,为一个游戏开发礼包码功能 通常一款游戏运营期间会搞各种各样的活动吸引玩家,其中最常见的就是发放礼包,  玩家可以通过礼包码兑换礼包. 用礼包码兑换礼包有个一限制,游 ...

  3. 终于,帮开发写了一个bug

    写在文章的开头 最近项目比较紧,尤其前端的的需求比较多,作为一名测试,也会些vue,本着加快项目进度的美好想法,就自告奋勇的向组长承接了一部分开发的任务,其中有个需求需要在我们的广告管理后台新增一个上 ...

  4. 如何写出一个让人很难发现的bug?

    程序员的日常三件事:写bug.改bug.背锅.连程序员都自我调侃道,为什么每天都在加班?因为我的眼里常含bug. 那么如何写出一个让(坑)人(王)很(之)难(王)发现的bug呢? - 1 -新手开发+ ...

  5. 写了一个Windows服务,通过C#模拟网站用户登录并爬取BUG列表查询有没有新的BUG,并提醒我

    写了一个Windows服务,通过C#模拟网站用户登录并爬取BUG列表查询有没有新的BUG,并提醒我 1.HttpUtil工具类,用于模拟用户登录以及爬取网页: using System; using ...

  6. 浅谈如何写出一个让(坑)人(王)很(之)难(王)发现的bug

    该文章内容来自脚本之家,原文链接:https://www.jb51.net/news/598404.html 程序员的日常三件事:写bug.改bug.背锅.连程序员都自我调侃道,为什么每天都在加班?因 ...

  7. 实现一个最简单的VIM文本编辑器(可能有bug,随便写了一个)

    简单的写了一个文本编辑器,功能很简单,但足以把文件IO相关的操作熟悉了,可能功能或者分配的大小还不够完善.请参考参考: #include <stdio.h> #include <co ...

  8. sqlite在Android上的一个bug:SQLiteCantOpenDatabaseException when nativeExecuteForCursorWindow

    更多内容在这里查看 https://ahangchen.gitbooks.io/windy-afternoon/content/ ::-/com.company.product W/System.er ...

  9. [android开发IDE]adt-bundle-windows-x86的一个bug:无法解析.rs文件--------rs_core.rsh file not found

    google的android自带的apps写的是相当牛逼的,将其导入到eclipse中方便我们学习扩展.可惜关于导入的资料太少了,尤其是4.1之后的gallery和camera合二为一了.之前导4.0 ...

随机推荐

  1. MATLAB System Generator初识

    MATLAB System Generator初识 仿真模型: 仿真结果: 使用system generator 搭建低通滤波器具体步骤: 打开库,库里面的组件详细介绍见UG958文档 添加数字滤波器 ...

  2. 企业数据总线(ESB)和注册服务管理(dubbo)的区别

    企业数据总线(ESB)和注册服务管理(dubbo)的区别 转载 2015年11月04日 09:05:14 7607  企业数据总线(ESB)和注册服务管理(dubbo)的区别 2015-03-09 0 ...

  3. ubuntu-docker入门到放弃(五)docker网络管理

    查看docker宿主机的网卡信息我们会发现,有一个docker0的网卡,这个网卡就是用于跟docker容器进行通讯的,这个网段跟我们docker容器的网段是一样的: #ifconfig docker容 ...

  4. windows服务命令 转载

    OnCustomCommand executes when the Service Control Manager (SCM) passes a custom command to the servi ...

  5. win7 上运行 php7 +

    win7 安装 php7+ 很简单, 这里不赘述 如何在phpstudy 添加   php7   百度也很容易找到. 但是在 php 7 运行的时候总是报0x0000007  或者 缺少 .dll 文 ...

  6. 黄聪:Pjax 无刷新开发web,更好用户体验

    什么Ajax.Pjax.Njax...神马玩意? 有Njax吗? 木有...不过真有Pjax!! 其实pjax就是用到了html5的新history api: pushState和replaceSta ...

  7. MySQL中int(M)和tinyint(M)数值类型中M值的意义

    在一开始接触MySQL数据库时,对于int(M)及tinyint(M)两者数值类型后面的M值理解是最多能够插入数据库中的值不能大于M: 后来工作后,也是一边学习一边使用,之后的理解是其中的M的意思是插 ...

  8. pdo连接数据

    <?php //1.操作其它数据库//2.事务功能//3.防止SQL注入攻击 //造PDO对象//$dsn = "mysql:dbname=mydb;host=localhost&qu ...

  9. Mina 专题

    未完待续>>> 目录: 一)同步.异步.阻塞.非阻塞 二)Java中的NIO 三)Mina 异步请求 四)Mina 同步请求 五)Mina 核心类及处理流程 六)Mina 线程模型 ...

  10. python-selenium并发执行测试用例(方法一 各模块每一条并发执行)

    总执行代码: # coding=utf-8import unittest,os,timeimport HTMLTestRunnerimport threadingimport syssys.path. ...