- 博客(15)
- 问答 (1)
- 收藏
- 关注
原创 Error C4668 : 没有将“__has_feature”定义为预处理器宏,用“0”替换“#if/#elif”
发现编译还是用的原来的库,最后在MSVC目录里发现任然存在14.42版本的库(可能在某个流程中会自动检测msvc的高版本吧!最后我是手动删除14.42的库,再运行虚幻的GenerateProjectFiles.bat脚本重新生成解决方案,然后编译就对了。按上面的回退之后,我手动将UE5.sln中的包含库目录改成需要的版本。将MSVC工具库回退到包含宏定义的版本就行。原因是因为编译的过程中没有找到。宏,而这个是 MSVC 中的宏。第 20 行有这个宏。
2024-11-23 18:45:55
2304
6
原创 define、typedef 和 using 随笔
2. 用于申明模板参数为类型,而不是成员函数。1. 用于重定向类型名。typedef一般有两种用法。
2024-10-11 11:49:06
409
原创 关于完美转发std::forward的一点随笔
1. 根据函数模板类型进行右值引用的折叠 ,然后静态转换为折叠后的类型( _Ty 与 && 折叠成_Type,然后static_cast_Arg )。所以,在这个模板函数中,我们得分清模板类型_Ty 和 模板参数 _Arg 是两个东西,_Ty决定转发后得类型, _Arg参数最后会强转成_Ty折叠后的类型。在c++11引入右值引用后,在使用模板传参调用其他函数会变得优雅很多,右值引用主要运用在两个方面,移动语义和完美转发。也有人提出疑惑,作者也做了解答,但是还是有部分小伙伴搞不明白。
2024-09-24 11:23:24
309
原创 关于多继承第二虚函数表使用thunk跳转
到表2中找到Groundson::fun1直接调用,我们都知道,成员函数调用需要传如this,而这里的this = son2,由son2指向地址8,fun1中又对son1的变量有赋值,如果不对this指针做偏移,直接用son2指针(地址指向8)是操作不到son1的内存的。派生类C有两个基类A和B,其中A和B中存在虚函数show()(不管是继承而来还是原生的),且C类重写了虚函数show(),这样的C类中的第二张虚函数表(B类实例)里边保存的表项就不是D::show()虚函数地址。
2024-09-20 13:24:13
1020
翻译 c/c++ 变量前加(void)的意义
https://baijiahao.baidu.com/s?id=1645466623988106939&wfr=spider&for=pc
2023-05-19 11:31:22
407
1
原创 结构体与类
在C++中,struct和class没啥两样,只是struct默认是public,class默认是private. struct内数据默认是public类型的,class内数据默认是private类型的。如果从空间分配上来看,struct变量放在栈上,而class变量放在堆上,因此struct变量会自动释放,而class变量需要手动释放。C++里根本就没有结构,仅仅为了兼容c才有结构这种东西,实际上除了名字以外,C++的结构就是类!c不是面向对象的语言,没有继承等概念。C里面没有,C++里面有。
2023-04-13 16:32:27
70
空空如也
ue4 开发,如何获取ps5的写入权限
2023-03-28
类的成员是函数指针的情况
2021-03-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人