C++
tony++
这个作者很懒,什么都没留下…
展开
-
Rtthread event实现源码分析
Rtthread eventevent主要用于线程间通信,线程结构体中有thread->event_info成员,存放FLAG标志,当FLAG标志为RT_EVENT_FLAG_AND时,需要满足(thread->event_set & event->set) == thread->event_set 才能唤醒该线程当FLAG标志为RT_EVENT_FLAG_OR时,满足 thread->event_set & event->set 即可唤醒线程。原创 2022-04-23 17:00:32 · 436 阅读 · 0 评论 -
Rtthread信号量/互斥量实现分析
rtthread 信号量与互斥量原创 2022-04-23 15:54:55 · 596 阅读 · 0 评论 -
C++二级指针和指针数组的关系
C++二级指针和指针数组的关系 char * buf[2] = {"hellow", "world"}; char **m = buf; //m指向数组的首地址,*m 取buf[0]的值,*(m+1)取buf[1]的值,这两个值分别是 //字符串"hellow"和"world"的地址 //**m则是取"hellow"第一个元素的值。...原创 2022-04-11 16:35:29 · 921 阅读 · 0 评论 -
C++虚指针和虚表
C++虚指针和虚表类中有虚函数,编译器就会为该类对象分配一个虚拟指针,虚拟指针指向一个全局(该类所拥有)的虚函数表。vptr 指向 vtable,vtable中保存着虚函数的地址。#include <stdio.h>#include <iostream>#include <cstring>using namespace std;using func = void (*)();class base{public: virtual void f原创 2022-04-11 10:54:57 · 1096 阅读 · 0 评论 -
Rtthread kservice中的系列函数
Rtthread kservice中的系列函数/* global errno in RT-Thread */static volatile int __rt_errno;/* * This function will get errno * * @return errno *///errno获取函数rt_err_t rt_get_errno(void){ rt_thread_t tid; if (rt_interrupt_get_nest() != 0) {原创 2022-03-24 17:31:11 · 488 阅读 · 0 评论 -
C++ SGI STL LIST实现
C++ STL list源码分析STL list node:STL list :一、pandas是什么?二、使用步骤1.引入库2.读入数据总结STL list node:// 双向链表struct _List_node_base { _List_node_base* _M_next; _List_node_base* _M_prev;};// list 节点template <class _Tp>struct _List_node : public _List_node_b原创 2021-12-15 14:05:36 · 1036 阅读 · 0 评论 -
va_list、va_start和va_end实现
@[TOC](va_list、va_start和va_end使用)一、va_list va_start va_end介绍三个宏在GCC中实现:typedef char * va_list;#define _INTSIZEOF(n) \((sizeof(n)+sizeof(int)-1)&~(sizeof(int) - 1) )#define va_start(ap,v) ( ap = (va_list)&v + _INTSIZEOF(v) )#define va_arg原创 2021-11-18 20:57:11 · 587 阅读 · 0 评论 -
C++ SGI STL iterator和traits源码分析
C++ STL iterator和traits源码分析iterator:traits:iterator:iterator_category 五种迭代器类型标记这里共有5种迭代器标记(代表五种类型的迭代器,比如vector就是forward类型的,list是bidirectorational类型的) struct input_iterator_tag {}; struct output_iterator_tag {}; struct forward_iterator_tag : p原创 2021-11-15 15:04:06 · 199 阅读 · 0 评论