Chang Liu
Chang Liu
Home
Posts
Publications
CV
Light
Dark
Automatic
Posts
C++ Metaprogramming - Template(1)
模板库为什么必须在头文件中实现: 因为模板的原理是:在编译时,每发现一种模板参数的模板实例,就生成对应模板参数的代码。 如果使用源代码分开编译,则编译模板库的源代码时,编译器并不知道这一模板库有哪些模板实例;而编译模板实例时,又没有模板库的源代码来作生成。 因此会产生链接错误,没有生成对应模板参数的源代码。 Template parameters and template arguments Template parameters Every template is parameterized by one or more template parameters, indicated in the parameter-list of the template declaration syntax:
May 3, 2024
10 min read
记录 Apple 屏幕镜像功能的 bug
Background 近日需要用到苹果自带的 AirPlay 功能,实现 Macbook Air 朝 iPad 投屏。但实际使用时出现找不到设备的现象。 如果查询用户手册,会发现它的步骤并不包含可能出现问题的原因。 DAY 1 环境1: 两台设备已经使用同一个 Apple ID 进行登录,并且在同一个局域网(使用的是家里的路由器,此处称为 Wi-Fi A)下,AirPlay/AirDrop/Bluetooth 开关均已打开。iPad 系统是当前最新的 iPadOS 17.4.1,Macbook Air 没有升级到最新小版本。 现象1: 发现 Macbook Air 的屏幕镜像无法找到 iPad,但是 iPad 可以找到 Macbook Air。只能实现单向投屏。
May 2, 2024
1 min read
调试笔记:在Ubuntu20.04上编译GaussianSplatting官方仓库的SIBR Viewer
最近研究3DGS,打算看下渲染效果,一个个跑 render 函数太麻烦,于是想着用官方的 viewer 吧。但是官方的 viewer 只提供 Windows 环境下的 binary,Linux 平台上都得自己编译。官方命令是针对 Ubuntu22.04 的,但是在 Ubuntu20.04 上也能正常跑,命令长这样: # Dependencies sudo apt install -y libglew-dev libassimp-dev libboost-all-dev libgtk-3-dev libopencv-dev libglfw3-dev libavdevice-dev libavcodec-dev libeigen3-dev libxxf86vm-dev libembree-dev # Project setup cd SIBR_viewers cmake -Bbuild .
Jan 13, 2024
4 min read
Progress in AIGC Industry
2023.11 text-to-video Pika 1.0 | Pika: text-to-video, video style translation, image-to-video, image/video expanding, video extending, video editing. No open-source model and API now. Their demo is processed in realtime, which is astounding by now.
Nov 29, 2023
2 min read
Cite
×