随笔分类 - C++
content about C++ and C
摘要:观察者模式: 定义了一种一对多的依赖关系,让多个观察者对象同时监听一个主题对象。这个主题对象在状态发生变化时,会通知所有的 观察者对象,使他们能够自动更新自己。 UML图: 观察者模式提供了一种对象设计,让主题和观察者之间松耦合。两个对象之间松耦合,但是依然交互,不太清楚对方的具体细节。 就是不会像
阅读全文
摘要:参考:《linux多线程服务器编程 使用module网络库》(陈硕) 第二章 线程同步精要(P53-55)。 在多线程编程中,如果要用到修改共享资源的地方,如何正确地解决问题并提高效率? #include"mutex.h" #include<vector> #include<string> Mute
阅读全文
摘要:经常我们在一些开源的或者内核代码中会看到。 #define TYPE_STRUCT(ptr, type, member)((type *)((char*)(ptr)-(unsigned long)(&((type *)0)->member))) 就是由结构体的成员地址获得结构体的地址。 #defin
阅读全文
摘要:在dpdk中,由于封装了原子量的操作。如 typedefstruct{ volatileint32_t cnt;/**< An internal counter value. */ }rte_atomic32_t; 但是很多人在使用的时候,经常如下使用 rte_atomic32_t pkt_coun
阅读全文
摘要:#include<iostream> classStaticInit{ public: StaticInit(){ std::cout<<"Init Obj "<<std::endl; } staticStaticInit& getInstance(){ staticStaticInit i; re
阅读全文
摘要:这方法倒是好暴力!其实我们知道,如果继承的话,编译器在派生类的构造函数中插入一些代码(嗯,是的插入代码,这个不足为怪吧,像有些合的构造函数(就是编译器帮你生成的,非自己写的)那也是插入的代码)。那么在派生类的构造函数中会插入基类的构造函数的代码。#ifndef CLASS_NO_INHERIT_H#...
阅读全文
摘要:#ifndef SELF_SUM_H#define SELF_SUM_H#includeunsignedintSum_solution1(int n_value);classSumDefaultConstruct{private:staticunsignedint countN;staticunsi...
阅读全文
浙公网安备 33010602011771号