C++ 中自定义数组容器MyVector实现总结

C++ 中自定义数组容器MyVector实现总结

类模板实现过程中产生的问题:

问题一:.友元函数滥用的问题:

在实现<<输出操作符重载时,产生无法识别外部符号的问题。
原因在于模板类实现对友元函数存在限制(函数声明和函数重载分离的情况下才会有此种情况);
解决方法:

friend ostream &operator<<<T>(ostream &out, Point &p);注意<T>的位置,在参数列表前面

详细情况见:
https://blog.youkuaiyun.com/weixin_39583140/article/details/88816199

问题二:类模板的定义与成员函数的实现在.h和.cpp两个文件中实现的问题:

找不到外部符号的编译问题:
解决方法是在引用的文件中将include<MyVector.h>改为include<MyVector.cpp>

问题三:delete[ ]操作产生异常

错误在于delete与delete [ ]的混用;
注意区别 :

int *p=new int(10);
delete p;
int *q=new int[10]//注意()与[ ]的错用;
delete[] p;
</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值