
c++
smb_yy
一枚来自无名的it男
展开
-
函数回调没有找到重载的成员函数
0x01 现象今天进行qt视频播放器的时候,定义了一个mediaplayer,但是要实现倍速播放,和全屏播放,没得办法只能使用函数回调,以下是错误信息以下是头文件#pragma once#include "abstructMedia.h"#include "pch.h"class media :public abstructMedia{public: int mediapla...原创 2020-03-21 22:19:27 · 1598 阅读 · 1 评论 -
语法错误:缺少;在的前面
第一种情况第二种这两种情况都属于类的超前引用,虽然写了宏定义#pragma once,该处理方式与编译器的预处理相关,建议编写时将公共库放入pch.h中,其他自己写的头文件就不要包含了,以免进行二次包含!解决方案1. 将你写的头文件从pch.h中删除。2. 各个头文件都写上#pragma once3. 各个cpp文件分别包含其.h文件,4. 子类包含其父类的头文件...原创 2020-03-21 20:59:54 · 3510 阅读 · 0 评论 -
多态vptr指针思考一
0x01多态是c++的灵魂之处,c++实现多态就是使用vptr指针,实现多态的三个条件, 1. virtual 关键字 2. 子类重写父类的虚函数 3. 父类指针调用子类对象虚函数0x02 vptr的存储问题 —vptr是属于类的,而不是属于对象的直接附上代码 —>发现vptr是存储在父类中class A { virtual void func() { co...原创 2020-03-20 01:36:29 · 287 阅读 · 0 评论 -
使用函数指针实现类函数重载
函数指针注:该汇编使用intel格式,及与AT&T相反的操作方式0x01 指针无法区分数据还是代码1. 我们知道c/c++之所以伟大是因为很多方面,其中就是因为指针可以操作内存中的任意数据,理论上只要是在内存中,都可以操控。2. 那么指针可以指向操作码吗???这个就可以打开潘多拉的魔盒了。其实是可以的,而且还可以打印机器码,因为操作指令是存在内存中的,然而寄存器算是和cpu最紧密...原创 2020-03-08 23:54:33 · 655 阅读 · 0 评论 -
数组里存的是什么,还有指针指向字符串问题
0x1 原由 一直被字符串数组以及指向字符串指针所初的地址所困扰,然而今天第三次看c/c++安全编码的 时候又遇见了这个问题,strlen(const char)所以我们要来思考以下这些周边的问0x2问题数组a[]中的a到底是什么数组a创建空间的存储位置在main创建的数组里面存的是什么 如a[2]数组a[]=“abc” 与 p="abc"是否指向同一个地址"...原创 2019-12-02 12:39:39 · 502 阅读 · 0 评论 -
c语言内存申请函数
几个常用的内存分配函数void* malloc(size_t size)void* calloc(size_t memb,size_t size)void* realloc(void *p,size_t size)void* aligned_alloc(siee_t alignment, size_t size)所引发的错误1.初始化错误2.未检查返回值3.对空指针或无效...原创 2019-11-27 13:17:09 · 298 阅读 · 0 评论 -
sizeof(),wcslen,strlen对于字符数组的使用
1.sizeof函数的用法!``在这里插入图片描述新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编...原创 2019-11-06 23:24:36 · 835 阅读 · 0 评论 -
C++的Memcpy与Memcpy_s函数解析
Memcpy函数一. 函数内容** 1.1函数原型 **void * Memcpy(void * dest,const void * src,size_t count)这是一个函数指针 接收的是一个地址 dest是接收地址的首地址,src是源首地址,count是接收目标的大小单位为字节 位于cstring或memcpy.h头文件中。windows中Memcpy的函数原型 ...原创 2019-10-10 22:03:11 · 14515 阅读 · 0 评论 -
内存与指针day1
##6.191.内存地址: num变量 = *(&num)游戏外挂将程序设置为dll动态链接库文件写入_declspec(dllexport) void go(){ /*声明为导出函数int *p = (int *)0x1efa12;*p = 999;}然后使用dll注入工具 注意:p指向的是需要修改的动态内存地址…直接访问与间接访问,直接访问:根据变量的地址访...原创 2019-07-13 22:01:21 · 106 阅读 · 0 评论 -
c++11特性原始字符串字面量
前景带入大三第一个学期学过半吊子的python了解到,python中为了避免程序员过多的使用转义字符‘\’ 例如“C:\\inetpub\\wwwroot”,如果使用python的原始字符串就是 r"C:\inetpub\wwwroot" 这个样子的身为c++11这个绝对不会缺席,作为modern c++然后他也有这个鬼,不过用的式R而且要用()起来如#include #inclu...原创 2019-06-09 11:27:05 · 340 阅读 · 0 评论