- 博客(7)
- 收藏
- 关注
原创 static静态变量初始化顺序不确定引起的问题。
我们知道静态变量在函数执行时会进行初始化,那么不同文件中定义的静态变量都要进行初始化,这些不同变量的初始化顺序是什么?答案是不确定的。例如:a.h中static const std::string msg = "hello";class Manager {pubic : static Manager& Instance() { static Manager manager; return man...
2021-11-26 23:31:11 611 1
原创 c++指针传递常见问题
我们知道,通过swap函数交换两个变量的值的时候,需要进行引用传递:void swap(int& a, int& b) { int temp = a; a = b; b = temp;}当通过函数给指针赋值的时候,不能传递指针本身,需要传递指针的指针或者引用,否则函数调用后,实际上指针不会赋值例如:static int a = 100;void fun(int * ptr) { ptr = &...
2021-11-25 23:43:10 663
原创 c++宏定义和#,##以及宏定义中的双引号““
c++ 宏定义的时候,会用到#和##,1.#:将宏定义中的符号转换成字符串,例如宏定义#define RegisterTest(featue,name) \std::cout << #featue<< ":"<< #name<< std::endl;调用RegisterTest(a, b)结果输出a:b2.##:拼接多个宏的符号,例如宏定义#define RegisterTest(featue,name) \i.
2021-11-23 23:23:51 2713
原创 线程安全队列和多任务同步
上回说到如果有一个请求,分成了很多互不干扰的task,放入了队列里,那么该请求的这些task怎么做同步呢?需要一个同步机制,直接上代码;class Notification {public: Notification() = default; ~Notification() { } int32_t init() { if (init_) return 0; event_fd_ = eventfd(0,0); ...
2021-11-22 00:05:58 199
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人