Soui七 2
导出SOUI对象到Lua 为了在SOUI中使用lua,需要使用lua内核实现一个SOUI::IScriptModuler接口。 导出SOUI对象通常应该在IScriptModule的实现类的构造中执行 在lua中使用 事件分发处理 在MFC中,一个类要处理消息,这个类通常派生自C...
导出SOUI对象到Lua 为了在SOUI中使用lua,需要使用lua内核实现一个SOUI::IScriptModuler接口。 导出SOUI对象通常应该在IScriptModule的实现类的构造中执行 在lua中使用 事件分发处理 在MFC中,一个类要处理消息,这个类通常派生自C...
概述 如果我们在线程间共享数据,我们需要设置规则,哪个线程可以访问数据的哪一位,什么时间以及如何将更改传达给关心数据的其他线程。 关键点 问题 从整体上来看,所以线程之间共享数据的问题,都是修改数据导致的。如果所有的共享数据都只读的,就没有问题,因为一个线程所读取的数据不受另一个...
背景 管理器用于管理多个任务 接入了管理器的模块,会根据自己要做的事情,来生成不同的任务 而这些任务的生成,是由接入了管理器的模块,通过一些重要的数据(比如目标数据包的编号,以及目标所在的位置,要求管理器执行的任务类型),来让管理器生成的不同的任务,并添加到任务队列中 目前的设计...
创建 窗口 动画事件 这个初始化函数会在OnInitDialog里面调用,OnInitDialog对应到了MSG_WM_INITDIALOG消息 可以看到,这里给目标对象,背景图片,添加了阿尔法值变化的相关事件(开始和结束),并绑定到了OnBkgAlphaAniEx函数上 当启动...
模板 模板是一组函数或类的参数实现。 编译器能够在需要使用函数或类模板时,用模板生成一个具体的函数或者类的定义。 也可以定义参数化类型的模板,因此模板并不是可执行代码,而是用于生成代码的蓝图或配方 因此一个从来没有被使用过的模板,它会被编译器忽略,不会生成可执行代码。 也就是说,...
概述 C++中,thunk技术主要用于处理多继承和虚函数调用时复杂的this指针调整问题 在构造对象的过程中,为虚函数表(vtable)填充函数指针时,编译器可能会插入thunk代码,以确保后续通过基类指针调用虚函数时,this指针能被正确调整 触发场景 通过非首个基类指针调用派...
程序执行所用的时间 关于优化的一点 标准 C++标准允许一种(编译器)实现省略创建一个只是为了初始化另一个同类型对象的临时对象。指定这个参数(-fno-elide-constructors)将关闭这种优化,强制G++在所有情况下调用拷贝构造函数。 表现 当编译器遇到需要用一个类对...
定义 使用 引入gflags文件夹 定义下面的宏 使用
类中的类类型静态成员变量 概述 对于类类型的静态成员变量,即使没有被使用,也会执行这个静态成员变量的构造和析构。 对于int,double基础类型,如果没有用到,编译器可能不为它分配内存。 使用 老用法 C++17 函数中的类类型静态对象 概述 如果函数没有被调用过,该静态对象就...
常用特殊 静态类型动态类型 主要区别在于对类型进行检查的时间点。 对于所谓的静态类型,类型检查主要发生在编译阶段。 对于动态类型,类型检查主要发生在运行阶段(和类型推导相关)。 auto auto声明变量的类型必须由编译器在编译时期推导而得。 auto声明的变量必须被初始化,以使...
搜索当前标签