日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

boost实用工具:创建一个禁止复制的类 noncopyable

發布時間:2024/9/21 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 boost实用工具:创建一个禁止复制的类 noncopyable 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  boost的noncopyable允許創建一個禁止復制的類,使用很簡單,但很好用!

C++ Code?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
? /*?boost_noncopyable.cpp?創建一個禁止復制的類
????noncopyable允許程序輕松實現一個禁止復制的類;
*/


#include?<iostream>
#include?<boost/noncopyable.hpp>?//?或#include?<boost/utility.hpp>

using?namespace?std;
using?namespace?boost;

//在C++中定義一個類的時候,如果不明確定義拷貝構造函數和拷貝復制操作符,編譯器會為我們自動生成
//但有時候我們不需要類的復制語義,希望禁止復制類的實例
//這是一個很經典的C++慣用語法,只要私有化拷貝構造函數和拷貝賦值操作函數即可
//如果程序中有大量這樣的類,重復寫這樣的代碼是相當乏味的,而且代碼出現的次數越多越容易增加手寫出錯的幾率
class?empty_class
{
public:
????empty_class()?{}
????~empty_class()?{}

????
//編譯器默認添加拷貝構造函數和拷貝賦值函數
????empty_class(const?empty_class?&?)?{}
????empty_class?&
operator=(const?empty_class?&)?{}
protected:
private:
};

class?noncopy_class
{
public:
????noncopy_class()?{}
????~noncopy_class()?{}
protected:
private:
????
//私有化拷貝構造函數和拷貝賦值函數,禁止復制類
????noncopy_class(const?noncopy_class?&?)?{}
????noncopy_class?&
operator=(const?noncopy_class?&)?{}
};

//針對以上情況,boost中的noncopyable為實現不可拷貝類提供了簡單清晰的解決方案
//從boost::noncopyable派生即可
/*
class?noncopyable
{
protected:
#if?!defined(BOOST_NO_CXX11_DEFAULTED_FUNCTIONS)?&&?!defined(BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS)
????BOOST_CONSTEXPR?noncopyable()?=?default;
????~noncopyable()?=?default;
#else
????noncopyable()?{}
????~noncopyable()?{}
#endif
#if?!defined(BOOST_NO_CXX11_DELETED_FUNCTIONS)
????noncopyable(?const?noncopyable&?)?=?delete;
????noncopyable&?operator=(?const?noncopyable&?)?=?delete;
#else
private:??//?emphasize?the?following?members?are?private
????noncopyable(?const?noncopyable&?);
????noncopyable&?operator=(?const?noncopyable&?);
#endif
};
}

typedef?noncopyable_::noncopyable?noncopyable;
*/

class?do_not_copy_class?:?noncopyable
{
public:
protected:
private:
};

int?main(void)
{
????empty_class?em_c1;
????empty_class?em_c2(em_c1);
????empty_class?em_c3?=?em_c1;

????noncopy_class?noc_c1;
????
//error?C2248:?'noncopy_class::noncopy_class'?:?cannot?access?private?member?declared?in?class?'noncopy_class'
????//noncopy_class?noc_c2(noc_c1)?;
????//noncopy_class?noc_c3?=?noc_c1;

????do_not_copy_class?d1;
????
//error?C2248:?'boost::noncopyable_::noncopyable::noncopyable'?:?cannot?access?private?member?declared?in?class?'boost::noncopyable_::noncopyable'
????//do_not_copy_class?d2(d1);
????//do_not_copy_class?d3?=?d1;

????
//只要有可能就使用boost::noncopyable,它明確無誤地表達了類設計者的意圖;
????//對用戶更加友好,而且與其它的boost庫配合的也好
????cin.get();
????
return?0;
}

總結

以上是生活随笔為你收集整理的boost实用工具:创建一个禁止复制的类 noncopyable的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧洲av一区 | 一区二区精品免费 | 免费国产一区二区 | 黑人导航 | jizz在线免费观看 | 国产特级视频 | 精品黄色片 | 精品国产99久久久久久 | 啪网站| 国产东北真实交换多p免视频 | 日韩免费视频一区二区视频在线观看 | 在线观看av资源 | 91日日| 亚欧日韩| 中国丰满老妇xxxxx交性 | 无码免费一区二区三区免费播放 | 国产三级视频在线播放 | 成人免费网站在线观看 | 国产日产精品一区二区三区 | 精品国产成人亚洲午夜福利 | a一级黄色| av一区二区三区在线观看 | 97精品视频在线观看 | 国内成人精品视频 | 久久精品3 | 黄色免费版 | 亚洲精品一区久久久久久 | 五月天狠狠操 | 精品国产乱码久久久久久浪潮 | 美女一级黄色片 | 国产日本精品 | 亚洲精品.www | 麻豆视频传媒入口 | 久热超碰| 亚洲色图制服诱惑 | 叶山小百合av一区二区 | 国产精品免费无遮挡无码永久视频 | 成人区一区二区 | 午夜肉体高潮免费毛片 | 久久久久国产精品国产 | 在线亚洲综合 | 麻豆导航 | 国产一卡二卡在线播放 | 成人免费直播 | 国产成人免费看 | 国产精品丝袜在线观看 | 日本特黄特黄刺激大片 | 国内自拍视频在线播放 | 超碰1000| 亚洲av无码一区二区二三区软件 | av激情网站| 欧美特一级片 | 少妇肥臀大白屁股高清 | 日韩av一区二区三区在线 | 无码人妻一区二区三区线 | 精品欧美一区二区三区在线观看 | 一级免费黄色 | 国产 日韩 欧美 成人 | 亚洲精品乱码久久久久久蜜桃不卡 | 日韩一区二区三区电影 | 日韩黄片一区二区三区 | 日韩一区免费视频 | 一二区免费视频 | 精品久久久999 | 国产精品久久久国产盗摄 | 精品无码久久久久久久久果冻 | 国产91综合| 久久久人体 | 9.1成人看片 | 国产极品美女高潮无套嗷嗷叫酒店 | 蜜臀久久99精品久久久久宅男 | 亚洲一级中文字幕 | 日韩免费高清视频 | 国产精品免费看久久久无码 | 成全影视在线观看第8季 | 欧美性网址 | 波多野结衣女同 | 日批免费观看 | 亚洲精品精品 | 日本高清视频一区二区 | 得得的爱在线视频 | 波多野结衣中文字幕一区二区三区 | 九九在线视频 | 天天做夜夜操 | 亚洲免费观看高清完整 | 久草网在线视频 | 国产一区在线观看视频 | 中文字幕在线亚洲 | 日本三级2019 | 国产女主播在线 | 国产又粗又猛又爽又黄av | 国产黄片毛片 | 国产精品爱啪在线线免费观看 | 777片理伦片在线观看 | 午夜丰满寂寞少妇精品 | 亚洲天堂网在线观看视频 | 在线免费观看黄色网址 | 男女一区二区三区 | 色av综合网 |