上一页 1 2 3 4 5 6 ··· 35 下一页

2024年5月29日

摘要: intro 在github上找到一个挺好的source insight配色,看文章的意图是模仿sublime主题。 dark mode看起来还不错,但是加载之后会发现中文注释看不到,但是能够正确的拷贝出来,所以应该是source insight编码处理没有问题,而是由于配色和背景相同之类的原因导致的 阅读全文
posted @ 2024-05-29 21:07 tsecer 阅读(56) 评论(0) 推荐(0) 编辑

2024年5月23日

摘要: intro docker这个命令行工具本身通常是接触容器的第一关:示例中一般会使用docker来制作(build)镜像/运行(run)容器。但是docker这个可执行程序本身并没有太复杂的逻辑,它更多的是提供了一个类似于bash这种和人类用户更友好的命令/子命令,真正的workhorse是docke 阅读全文
posted @ 2024-05-23 18:08 tsecer 阅读(69) 评论(0) 推荐(0) 编辑

2024年5月16日

摘要: intro 由于每次vim都启动一个ycmd服务进程,并且端口地址是由vim客户端指定的(因为ycmd启动之后vim客户端需要连接过去),所以vim在指定端口的时候就需要给出一个当前没有使用中的端口。 那么如何获得一个未使用的端口呢? tsecer@harry: ps aux | fgrep ycm 阅读全文
posted @ 2024-05-16 18:15 tsecer 阅读(9) 评论(0) 推荐(0) 编辑

2024年4月28日

摘要: Intro UE的大部分content资产都放在了.PAK文件中,为了避免资产被破解,最好对文件进行加密。由于pak文件在运行时需要解密,所以运行时必然需要知道明文密码。或许是出于效率考虑,Unreal使用的是AES这种对称加密,也就是加密和解密使用的是相同的key。 如果把密码以明文的形式存储在文 阅读全文
posted @ 2024-04-28 17:20 tsecer 阅读(733) 评论(0) 推荐(0) 编辑

2024年4月26日

摘要: 观察 为了让庞大代码库看起来更简洁一些,UE使用了不少C/C++黑魔法:宏。把一些重复或者繁琐的实现细节隐藏在了宏里面(例如最为常见且繁琐的GENERATED_BODY宏),尽管代码看起来更简洁,但也隐藏了一些(重要的)细节。 在看UE插件实现时,意外的看到IMPLEMENT_MODULE宏定义中, 阅读全文
posted @ 2024-04-26 12:19 tsecer 阅读(45) 评论(0) 推荐(0) 编辑

2024年4月24日

摘要: 问题 尽管VS Code提供了在windows下通过ssh访问linux机器的各种便利,但是使用vim在linux环境下开发可以方便的使用从Unix系统中继承的强大工具集(例如grep命令),并且构建、部署也更加方便。加上vim丝滑的操作流,使得linux环境下vim开发依然有着很大的吸引力。 但是 阅读全文
posted @ 2024-04-24 20:23 tsecer 阅读(27) 评论(0) 推荐(0) 编辑

2024年4月10日

摘要: closure lexical scope 这篇文章虽然不长,但是厘清了一些基本的概念: 闭包的直观效果就是可以捕捉所在环境中的变量。 Closures are special functions that can capture the environment, i.e. variables wi 阅读全文
posted @ 2024-04-10 14:31 tsecer 阅读(42) 评论(0) 推荐(0) 编辑

2024年4月2日

摘要: 问题 在UE的代码中,经常可以看到对于父类类型的引用,因为很多情况下都要先调用父类的同名函数。例如随便看下UE的部分代码,在实现自己序列化函数的时候先调用基类的序列化函数。 但是,尽管Super是一个非常顺数的功能(在行为树库behaviac数中也有super定义),但是C++并没有实现这种功能。这 阅读全文
posted @ 2024-04-02 21:51 tsecer 阅读(29) 评论(0) 推荐(0) 编辑

2024年3月4日

摘要: 问题 C++的异常处理看起来是一个比较神奇的功能,能够在运行时穿越堆栈,从异常发生位置直达异常处理位置。通过gcc的代码可以看到,这个堆栈回溯的一个关键步骤是这个宏,其中又使用了gcc的内置指令__builtin_eh_return。网上关于__builtin_eh_return这个内置函数的资料较 阅读全文
posted @ 2024-03-04 20:19 tsecer 阅读(48) 评论(0) 推荐(0) 编辑

2024年2月4日

摘要: future/promise future提供了一个基于数据(future模板类型)的异步概念:对于一个类型T,可以在以后通过get接口获得这个类型T的变量。或者打个不太恰当的比方,当你获得一个future对象时,就获得了一个消费券(consumer):拿着这张券可以兑换(get)一个T类型的结果( 阅读全文
posted @ 2024-02-04 19:33 tsecer 阅读(383) 评论(0) 推荐(1) 编辑
上一页 1 2 3 4 5 6 ··· 35 下一页

导航