05 2025 档案
摘要:XCB API风格探究 libxcb中的API风格是这样的: // 发送请求并得到 Cookie 对象 xcb_DOSOMETING_cookie_t cookie = xcb_DOSOMETING(conn, ARGS...); // 继续执行其他任务 ... // 在需要获取结果的时候,通过调用
阅读全文
摘要:C语言一个内存分配引发的问题——指针长度截断 问题现象 #include <stdio.h> #include <string.h> int main() { char* str = NULL; str = (char*)calloc(1, 5); fprintf(stderr, str); ret
阅读全文
摘要:C语言ALIGN对齐数宏 Linux内核中有许多 ALIGN 宏,如: #define ALIGN(x, size) __ALIGN_MASK(x,(typeof(x))(size)-1) // typeof宏是gcc的扩展,用于求出x的类型 #define __ALIGN_MASK(x,mask)
阅读全文
摘要:杂谈:正确使用Go接口 https://blog.chewxy.com/2018/03/18/golang-interfaces/ 不要写Java风格的接口 由于Go实现一个接口只需要含有签名完全一致(包括receiver、args和retval)就行了,而不像Java中那样通过 implement
阅读全文
摘要:对象切割(Object Slicing)是 C++ 中的一个常见问题,发生在对象拷贝时,尤其是在涉及基类与派生类之间的赋值或传递时。其结果是派生类对象被转换为基类对象时,丢失了派生类中的特定信息或成员,导致派生类的行为不能被完整地保留。 何时会发生对象切割 对象切割通常在以下几种场景中发生: 值传递
阅读全文

浙公网安备 33010602011771号