- 博客(10)
- 资源 (2)
- 收藏
- 关注
原创 派生类重载问题
条件一:B继承A,C继承B class A { public: void pp() { cout << "A" << endl; } }; class B : public A { public: void pp() { cout << "B" << endl; } }; class C : public B { public: void pp() { cout << "C" << endl; } }; 条件二:存在两.
2021-10-21 10:00:32
269
原创 nullptr 模拟实现
const class nullptr_t_t { public: template<class T> operator T*() const {return 0;} template<class C, class T> operator T C::*() const { return 0; } private: void operator& () const; } nullptr_t = {};.
2021-09-24 00:39:50
190
原创 gdb调试
backtrace 查看堆栈信息 info 查看函数内部局部变量数值 set follow-fork-mode child/parent 切换子/父进程 set args ---/show args设置/查看运行参数 forward/search :从当前行向后查找匹配某个字符串的程序行 run break 断电 info/delete/clear/enable/disablebreakpoints ...
2021-09-24 00:30:44
91
原创 C++ double check
学习Double-Checked Locking is Fixed In C++11 (preshing.com) double check在多线程编程中经常见到,但是double check 还不够。 拿单例模式举例 // 普通单例 Singleton* Singleton::getInstance() { if (m_instance == nullptr) { m_instance = new Singleton; } return m_instance...
2021-09-24 00:05:43
430
原创 性能分析方法
一、性能分析的常用手段 1、空间换时间,利用内存缓存从磁盘上取出的数据,CPU可以直接访问内存,从而比从磁盘读取数据更高的效率。 2、时间换空间,当空间成为瓶颈的时候,切开数据分批次处理,用更少空间完成任务的处理。 3、分而治之,把任务切分,分开执行。 4、异步处理,业务链路上有任务时间消耗较长,可以拆分业务,减少阻塞影响,常见的异步处理有MQ(消息队列)。 5、并行,用多个进程或者线程同时处理业务,缩短业务处理时间。 6、离用户更近一点,比如CDN技术,把用户请求的静态资源放在离用户更近的地方
2020-10-09 15:42:06
659
转载 vscode 理解
转载自https://www.cnblogs.com/xjnotxj/p/9437528.html和https://tieba.baidu.com/p/5371653818?red_tag=2771202153 一、建立配置文件 1、选择你的项目 2、选择你项目的语言 3、当前项目路径下生成 .vscode/launch.json { // Use IntelliSen...
2018-11-06 15:52:14
595
原创 2018/09/07 阿里问答题二: N元送红包(无循环)
原题: 没考虑大数问题(数字位数太长,double不够大或不够精细),用字符串处理比较好,不过懒得重新写一遍。 以下是没考虑大数问题代码: #include<iostream> #include<string> using namespace std; double first = 0, second = 0; double temp=0,n=0,point=0...
2018-09-07 22:53:40
225
原创 2018/09/07阿里问答题一(衣服颜色问题)
原题: #include<iostream> #include<string> #include <cstdio> using namespace std; int drawColor(int c1, int c2, int c3, int last) { //cout << c1 << c2 <...
2018-09-07 22:44:26
319
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人