当前位置: 首页> 房产> 家装 > 香港轻量云服务器_长沙网站建设搭建_网站的优化_站长工具seo综合查询访问

香港轻量云服务器_长沙网站建设搭建_网站的优化_站长工具seo综合查询访问

时间:2025/7/11 0:58:40来源:https://blog.csdn.net/qq_40178082/article/details/144754117 浏览次数:0次
香港轻量云服务器_长沙网站建设搭建_网站的优化_站长工具seo综合查询访问

一、C++98如何禁用拷贝构造与拷贝赋值

将这2个函数的声明写在private中,且不去定义。此时,在类外面调用就会报函数不可访问。不去定义是为了阻止成员函数或类的友元调用,此时,会在链接处报错

二、C++中使用=delete来完成上述操作,通常delete掉的函数会写在public中,否则会报错信息不明确

三、delete可以用来删除任何函数

bool isLucky(int number);
isisLucky('a'); //类型转换
bool isLucky(int number);
bool isLucky(char)=delete;
isisLucky('a'); //报错

四、delete可以禁止模版的实例化

#include <iostream>
#include <string>
#include <vector>struct B;struct A
{A(int data) : _data(_data){};A(const A &a) = delete;A &operator=(const A &) = delete;private:friend B;int _data;
};struct B
{B(){A a(10);// A b = a;}
};bool isLucky(int a)
{return a == 7;
}bool isLucky(char) = delete;template <typename T>
void processPointer(T *ptr)
{
}template <>
void processPointer<void>(void *ptr) = delete;int main()
{A a(10);// A aaa = a;B b;isLucky(32);// isLucky('a');int aa = 10;void *aaptr = reinterpret_cast<void *>(&aa);// processPointer(aaptr);return 0;
}

关键字:香港轻量云服务器_长沙网站建设搭建_网站的优化_站长工具seo综合查询访问

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: