随笔分类 -  c++

上一页 1 ··· 5 6 7 8 9 10 下一页
摘要:参考文章https://blog.csdn.net/pongba/article/details/7911997 什么是RAII 技术?(参见百度百科相关条目) RAII(Resource Acquisition Is Initialization)是一种利用对象生命周期来控制程序资源(如内存、文件 阅读全文
posted @ 2018-08-06 11:18 大老虎打老虎 阅读(516) 评论(0) 推荐(0)
摘要:一、shared_ptr学习 1.shared_ptr和weak_ptr 基础概念 shared_ptr与weak_ptr智能指针均是C++ RAII的一种应用,可用于动态资源管理 shared_ptr基于“引用计数”模型实现,多个shared_ptr可指向同一个动态对象,并维护了一个共享的引用计数 阅读全文
posted @ 2018-07-26 20:52 大老虎打老虎 阅读(7575) 评论(0) 推荐(0)
摘要:我们都知道dynamic_cast会在运行时进行类型检查,比较安全,static_cast静态转换,不安全 dynamic_cast转换的类型必须是个类,且这个类中必须有虚函数,为什么呢? 虚函数对于dynamic_cast转换的作用 为何使用dynamic_cast转换类指针时,需要虚函数呢。 D 阅读全文
posted @ 2018-07-25 11:43 大老虎打老虎 阅读(1052) 评论(0) 推荐(0)
摘要:这个问题的背景是在用libevent的buffer_remove时出现的,写一个伪代码 在这里断点调试时发现buffer的数据是正确的,转到str时,总会在字符串的结尾出现几个乱七八糟的字符且每次都不一样. 下面说一下原因,首先我们都知道每个字符串是以'\0'(即0)结尾的,而buffer_remo 阅读全文
posted @ 2018-06-30 23:31 大老虎打老虎 阅读(346) 评论(0) 推荐(0)
摘要:这样就会崩溃,可以用memset 或者结构体中加入一个别的类型的对象, 另外string 用mallo分配内存也会出错,因为malloc不会调用string的构造函数,所以应用new 阅读全文
posted @ 2018-06-26 15:52 大老虎打老虎 阅读(1727) 评论(0) 推荐(0)
摘要:1.TCHAR 2.string的c.str() 使用时要注意,当这样用时 string s="123"; char *c = s.c_str(); 其实是错误的,这和char *直接赋值一样,如果s是一个局部变量,离开作用域后内存销毁,再调用c就会出错,要用正确的方法strcpy(),前提是记得申 阅读全文
posted @ 2018-06-26 11:48 大老虎打老虎 阅读(471) 评论(0) 推荐(0)
摘要:c++中对new申请的内存的释放方式有delete和delete[两种方式,到底这两者有什么区别呢? 1.我们通常从教科书上看到这样的说明:delete 释放new分配的单个对象指针指向的内存delete[] 释放new分配的对象数组指针指向的内存那么,按照教科书的理解,我们看下下面的代码:int 阅读全文
posted @ 2018-06-09 16:26 大老虎打老虎 阅读(263) 评论(0) 推荐(0)
摘要:代码不完善,大概是这个思路,赋值,拷贝构造,析构时都要考虑引用次数 阅读全文
posted @ 2018-06-09 16:15 大老虎打老虎 阅读(164) 评论(0) 推荐(0)
摘要:部分参考地址https://blog.csdn.net/yanglingwell/article/details/56011576 auto_ptr是c++标准库里的智能指针,但是具有以下几个明显的缺陷,使用时要注意 1.就是所谓的控制权转移,下面是模拟代码 在赋值运算符重载和拷贝构造函数中将资源转 阅读全文
posted @ 2018-06-09 11:20 大老虎打老虎 阅读(307) 评论(0) 推荐(0)
摘要:先上一段代码 using namespace std;class A{public: ~A(){ cout << "deconstruct"; };};#include "vector"int main(){ vector<A*>a(100); A *aaa = new A; a.push_back 阅读全文
posted @ 2018-06-07 11:16 大老虎打老虎 阅读(1045) 评论(0) 推荐(0)
摘要:很简单就是在读的时候把写的锁锁住就好了 阅读全文
posted @ 2018-05-27 11:13 大老虎打老虎 阅读(1391) 评论(0) 推荐(0)
摘要:1 class IMyLock 2 { 3 public: 4 virtual ~IMyLock(){} 5 6 virtual void Lock() const = 0; 7 virtual void UnLock() const = 0; 8 }; 9 10 class Mutex : public IMyLock 11 { 12 public... 阅读全文
posted @ 2018-05-24 20:20 大老虎打老虎 阅读(2962) 评论(0) 推荐(0)
摘要:1 namespace 2 { 3 UINT_T GetWriteSizeForNoBuf(UINT_T fsize) 4 { 5 UINT_T write_buf_size = 0; 6 if (fsize % 512 == 0) 7 { 8 write_buf_size ... 阅读全文
posted @ 2018-05-22 19:07 大老虎打老虎 阅读(1165) 评论(0) 推荐(0)
摘要:C++的输入输出分为三种: (1)基于控制台的I/O (2)基于文件的I/O (3)基于字符串的I/O 其中基于字符串io的ostringstream可以这么用 ostringstream s_a; s_a<<"my name is wsw"; string s_name = s_a.str(); 阅读全文
posted @ 2018-05-21 16:06 大老虎打老虎 阅读(204) 评论(0) 推荐(0)
摘要:1.利用c++11新特性 std::wstring_convert配合std::codecvt模板类 作者:Gomo Psivarh链接:https://www.zhihu.com/question/39186934/answer/80443490来源:知乎著作权归作者所有。商业转载请联系作者获得授 阅读全文
posted @ 2018-05-09 09:33 大老虎打老虎 阅读(2318) 评论(0) 推荐(0)
摘要:本地字符集;rapidxml 阅读全文
posted @ 2018-04-28 16:20 大老虎打老虎 阅读(554) 评论(0) 推荐(0)
摘要:看到了几篇讲的不错的博客,这里收集起来 不明白的地方互相参考 https://blog.csdn.net/fangqingan_java/article/details/9320769 https://blog.csdn.net/michael019/article/details/48714303 阅读全文
posted @ 2018-04-27 19:33 大老虎打老虎 阅读(204) 评论(0) 推荐(0)
摘要:#include <stdio.h> #include <iostream> #include <mutex> class TestClass; template<class T> class CSingleton{ public: static T& Instance(); }; template 阅读全文
posted @ 2018-04-26 14:47 大老虎打老虎 阅读(173) 评论(0) 推荐(0)
摘要:线程池 阅读全文
posted @ 2018-04-19 16:51 大老虎打老虎 阅读(1351) 评论(0) 推荐(0)
摘要:转自https://blog.csdn.net/wangshubo1989/article/details/52133213 有很多东西我们一直在用,但是不知道他的名字。 什么是RAII? RAII是Resource Acquisition Is Initialization的缩写,用普通话将就是” 阅读全文
posted @ 2018-04-19 15:16 大老虎打老虎 阅读(202) 评论(0) 推荐(0)

上一页 1 ··· 5 6 7 8 9 10 下一页