c++11添加了delete关键字。

不想用那个函数,在那个函数后面加 = delete就可以了;

比如:

在函数重载中,可用 delete 来滤掉一些函数的形参类型,如下:
bool IsLucky(int number); // original function
bool IsLucky(char) = delete; // reject chars
bool IsLucky(bool) = delete; // reject bools
bool IsLucky(double) = delete; // reject doubles and floats

上述功能看似没啥作用,都delete为啥还要写。

但是,因为c++对每个类都会默认生出6个函数。有时间后我们不想我们的类被拷贝或赋值。我们可以把拷贝构造函数,重载赋值函数定义为私有。

但是定义成私有,类内部还是可以拷贝,赋值。 我想要无论如何都不能调用拷贝、赋值怎么办。

当然是用delete一下啦。

以下是测试代码:

#include <iostream>

using namespace std;

class Test {
public:
Test() {
}
Test(const Test&) = delete;
Test& operator = (const Test&) = delete;
}; class Test1 : public Test{ }; int main()
{
Test test;
//Test t2 = test;//编译错误
Test1 t1;
//Test1 t2 = t1;//编译错误
return ;
}

上述代码可以看出,delete 函数后面,就把这个函数完全消失掉了。继承也木有用了。

最新文章

  1. mysql 之基本操作
  2. 【BZOJ】1135: [POI2009]Lyz
  3. css2----清除浮动
  4. ural 1289. One Way Ticket
  5. ServletRequest接口召回总结
  6. XTEA加密算法
  7. [刷题]算法竞赛入门经典(第2版) 6-7/UVa804 - Petri Net Simulation
  8. 【原创】1、简单理解微信小程序
  9. ASP.Net:Javascript 通过PageMethods 调用后端WebMethod方法 + 多线程数据处理 示例
  10. sort方法实际应用详解---javascript中对一个对象数组按照对象某个属性进行排序
  11. 详解卷积神经网络(CNN)
  12. POJ-2533.Longest Ordered Subsequence (LIS模版题)
  13. 九度OJ 1067 n的阶乘 (模拟)
  14. js实现手机摇一摇
  15. spring cloud 之 Eureka 知识点
  16. react.js插件开发,x-dailog弹窗浮层组件
  17. UVA 816 Abbott&#39;s Revenge 紫书
  18. node项目设置环境变量
  19. JVM内存管理之GC简介
  20. python 和pycharm 安装

热门文章

  1. tushare使用
  2. org.in2bits.MyXls.XlsDocument 生成excel文件 ; 如果想读取模板再另外生成的话,试试 NPOI
  3. Linux 文件类型及操作
  4. perl 截取 fastq文件
  5. 超炫酷的jQuery/HTML5应用效果及源码
  6. OCA,OCP,OCM傻傻分不清?
  7. Oracle 10.2.0.1 精简客户端配置
  8. 微信小程序省市区选择器对接数据库
  9. Android 布局学习之——Layout(布局)详解一
  10. Lua中用Split函数分割字符串