摘要:
普通enum enum中的枚举值位于enum本身所在的作用域中 这两个enum都位于全局作用域中,因此A和B的枚举值也位于全局作用域中,就会引发命名冲突 而把A和B分离在两个作用域中,就不会引发命名冲突 存在枚举值向整数类型的隐式转换,但不存在整数类型向枚举的隐式转换 enum -> integer 阅读全文
摘要:
https://stackoverflow.com/questions/47666913/template-specialization-for-enum-values https://stackoverflow.com/questions/1619993/template-specializati 阅读全文
摘要:
NV12属于yuv color space,具有如下的编码格式,基本上yuv420都是这样的编码格式,比如YUV_I420就是上面仍然是Y,下面是先U,然后再V。U占{IMAGE_WIDTH/2,IMAGE_HEIGHT/2}块数据,V同理。具体见:https://wiki.videolan.org 阅读全文
摘要:
3 - getting started 3.1 设置cuda-gdb的调试环境 3.1.1 临时文件存放位置 By default, CUDA-GDB uses /tmp as the directory to store temporary files. To select a different 阅读全文
摘要:
![](https://img2023.cnblogs.com/blog/1481923/202301/1481923-20230104151028841-83140938.png) 例如warpshape is 64x32, WarpShape::kRow = 8, WarpShape::kCol 阅读全文
摘要:
原文链接:https://google.github.io/eng-practices/review/reviewer/ 文中所写CL,是指change list,等价于MR,PR THE STANDARD OF CODE REVIEW code review的目的是为了提升codebase代码质量 阅读全文
摘要:
其实就是翻译了一下cmake文档中的"cmake-language" cmake中的文件使用"cmake语言"来写 一个项目中的cmake文件有如下几种形式 当cmake处理一个项目时,起始点是项目根目录中的cmakelist.txt。这个文件包括了整体的编译细节,其中通过add_subdirect 阅读全文
摘要:
这一条还是比较简单的,就是说不要返回指向对象内部成分的引用、指针等,即便这个引用可能声明为const(或指针指向了const对象),对内部成分做了保护,但仍有可能造成handle空悬(称为danling)。 为此,举了一个例子: class GUIobject {}; const Rectangle 阅读全文
摘要:
旧式C转型: T(expression)/(T)expression 新式C++转型:static_cast/dynamic_cast/const_cast/reinterpret_cast 只能通过const_cast去掉const dynamic_cast成本很高,很多编译器的实现都是用了字符串 阅读全文
摘要:
变量的类型带有构造和析构时,定义一个变量会承受这两个成本,因此在使用时再定义它。例如,如果执行过程中可能被exception中断导致预先定义的变量没有使用,那么这个成本最好不要提前承担。 再比如,不要多承担一次赋值的成本。直接在构造时初始化预期的值。 一种常见的场景:for循环中需要使用某个变量,是 阅读全文