上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 30 下一页
摘要: 动机: 在某些情况下我们可能会"过度地使用继承来扩展对象的功能”由于继承为类型引入的静态特质,使得这种拓展方式缺乏灵活性; 并且随着子类的增多(拓展功能的增多)",各种子类的组合(拓展功能的组合)会导致更多子类的膨胀。 如何使"对象功能的拓展"能够根据需要来动态实现?同时避免"拓展功能的增多"带来的 阅读全文
posted @ 2019-06-26 21:49 osbreak 阅读(109) 评论(0) 推荐(0) 编辑
摘要: #include #include class MyString { private: char* m_data; size_t m_len; void copy_data(const char* s) { m_data = new char[m_len + 1]; memcpy(m_data, s, m_len); ... 阅读全文
posted @ 2019-06-26 21:43 osbreak 阅读(284) 评论(0) 推荐(0) 编辑
摘要: 类模版std::function是一种通用、多态的函数封装。 可调用对象的包装器,它最重要的功能是实现延时调用。 std::function对象是对C++中现有的可调用实体的一种类型安全的封装。 1、绑定普通函数 void func(void) { std::cout << __FUNCTION__ 阅读全文
posted @ 2019-06-25 23:36 osbreak 阅读(292) 评论(0) 推荐(0) 编辑
摘要: void func(void){} //函数指针 void(*func_ptr)(void) = &func; func_ptr(); struct Foo { void operator()(void){ } }; //仿函数 Foo foo; foo(); struct A { int a_; void mem_func(void)... 阅读全文
posted @ 2019-06-25 23:28 osbreak 阅读(139) 评论(0) 推荐(0) 编辑
摘要: std::wstring主要用于 UTF-16编码的字符, std::string主要用于存储单字节的字符( ASCII字符集 ),但是也可以用来保存UTF-8编码的字符。 UTF-8和UTF-16是UNICODE字符集的两种不同的字符编码。 std::string ws2s(const std::wstring &ws) { size_t i; std::string ... 阅读全文
posted @ 2019-06-24 22:54 osbreak 阅读(4329) 评论(0) 推荐(0) 编辑
摘要: 头文件 #include std::string to_string( int value ); std::string to_string( long value ); std::string to_string( long long value ); std::string to_string( unsigned value ); std::string to_string(... 阅读全文
posted @ 2019-06-24 22:53 osbreak 阅读(727) 评论(0) 推荐(0) 编辑
摘要: 待续 阅读全文
posted @ 2019-06-24 22:50 osbreak 阅读(173) 评论(0) 推荐(0) 编辑
摘要: std::future提供了一种访问异步操作结果的机制。 阅读全文
posted @ 2019-06-24 22:49 osbreak 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 待续 阅读全文
posted @ 2019-06-24 22:47 osbreak 阅读(154) 评论(0) 推荐(0) 编辑
摘要: //原子操作 计算机处理命令时最小的操作单位 atomic_int sum = 0; void workFun(int index) { for (int n = 0; n < 20000000; n++) { //自解锁 //lock_guard<mutex> lg(m); sum++; } } 阅读全文
posted @ 2019-06-24 22:44 osbreak 阅读(164) 评论(0) 推荐(0) 编辑
上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 30 下一页