【c++】类模版.exe 已触发了一个断点 和 未加载wntdll.pdb

今天用VS2015的时候遇到了这样一个问题

点击中断之后,又出现了这样的问题

查了一下,发现都是说指针越界以及new了空间之后没有delete

认真检查了我的代码,发现并没有上述情况,但是我的构造函数是这样写的

	//1、有参构造函数
	MyArray(int capacity):m_Capacity(capacity),m_Size(0),pAddress(new T[m_Capacity])
	{
	}

    private:
	T* pAddress;      //指针指向堆区开辟的真实数组
	int m_Capacity;   //数组容量
	int m_Size;       //数组大小

之前看过侯捷老师的视频,就记住了这么写,至于为什么也忘了

我又将构造函数写成了常规的形式

MyArray(int capacity)//:m_Capacity(capacity),m_Size(0),pAddress(new T[m_Capacity])
	{
		//cout << "MyArry的有参构造调用" << endl;
		
		this->m_Capacity = capacity;
		this->m_Size = 0;
		this->pAddress = new T[m_Capacity];
		
	}

于是bug没了,应该是初始化pAddress的时候有问题,this->pAddress = new T[m_Capacity];

暂且记录下来。

扫描二维码关注公众号,回复: 12933880 查看本文章

猜你喜欢

转载自blog.csdn.net/Zhouzi_heng/article/details/114999261
今日推荐