日韩性视频-久久久蜜桃-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的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 日本性xxxxx| 国产又粗又黄 | 97人人澡人人爽人人模亚洲 | 国产对白自拍 | av日韩一区二区 | 91精品观看 | 一区二区三区网 | 久久久久久69 | 久久久老熟女一区二区三区91 | 91超碰在线免费观看 | 天天色天天射天天操 | 91中文字幕网 | 91插视频| 亚洲人一区二区三区 | 亚洲a在线播放 | 黑人玩弄人妻一区二区三区 | 亚洲欧美另类视频 | 少妇的激情 | 成人免费小视频 | 午夜日韩精品 | 国产在线拍揄自揄拍无码视频 | 久久大伊人 | 久久国产劲爆∧v内射 | 自拍第1页 | 色欲狠狠躁天天躁无码中文字幕 | 在线免费三级 | 播金莲一级淫片aaaaaaa | 日韩av图片| 国产午夜福利一区二区 | 五月婷在线视频 | 中文字幕成人在线观看 | japanese21ⅹxx日本 | 精品欧美在线 | 国产精品另类 | 亚洲国产精品视频一区二区 | 久久精品久久久精品美女 | 亚洲综合p | 天天爱天天爽 | 99国产揄拍国产精品 | 中国二级毛片 | 国产高清精品软件丝瓜软件 | 日韩国产欧美在线观看 | 古装做爰无遮挡三级 | 久久久久久久久久久国产 | 国产69精品久久久 | 99re免费视频精品全部 | 90岁老太婆乱淫 | 国产精品人人妻人人爽人人牛 | 国产黄a三级 | 91精品999| 亚欧洲乱码视频 | 国产乱人乱精一区二视频国产精品 | 蜜桃视频日韩 | 黑人精品无码一区二区三区 | 91精品国产闺蜜国产在线闺蜜 | 中文字幕精品一二三四五六七八 | 伊人久综合 | 色哟哟一区二区三区 | 久久婷婷国产麻豆91天堂 | 日韩中文电影 | 一区二区三区在线免费观看视频 | 亚州精品国产精品乱码不99按摩 | 国产成人综合自拍 | 天天操操操操 | 一区二区自拍偷拍 | 欧美性黄色 | 另类捆绑调教少妇 | 中文字幕 国产 | www.色综合| 俺来也俺也啪www色 欧洲一区二区视频 | 熟女av一区二区 | 特大黑人娇小亚洲女mp4 | 国产黄色一区 | 东方成人av在线 | 免费观看的av网站 | cao在线视频| 天天插天天操天天干 | jjzz日本女人 | 国产精品久久久久久久久久妞妞 | 麻豆传谋在线观看免费mv | 久久久国产精华液999999 | 中文字幕免费高清网站 | 日韩av电影网址 | 中文字幕乱码视频 | 日韩在线一卡 | 大色av | 三女同志亚洲人狂欢 | 精品久久久99 | 欧美日韩黄色大片 | 国产污视频在线观看 | 蜜臀aⅴ国产精品久久久国产老师 | 无码内射中文字幕岛国片 | 日本黄色片段 | 亚洲一二区| 欧美经典一区二区三区 | 麻豆国产视频 | 天天免费视频 | 欧美无吗| 欧洲一二三区 |