
C++
文章平均质量分 64
师兄师兄怎么办
鱼遇雨欲与渔语。
展开
-
【C++游戏程序】easyX图形库还原游戏《贪吃蛇大作战》(三)
我们这次来补充一些游戏细节,以及增加吃食物加长角色长度等设定玩法,也是本游戏的最后一篇文章。原创 2024-12-06 11:23:56 · 499 阅读 · 0 评论 -
【面向对象】设计模式概念和分类
本文章是我考中级软件设计师时的笔记,基本都是一些自己的思路和见解,现记录一下,希望可以帮助到即将考证的同学。原创 2024-09-30 11:33:32 · 818 阅读 · 1 评论 -
【C++游戏程序】easyX图形库还原游戏《贪吃蛇大作战》(一)
游戏完成图如图下所示:大体框架就如上面所示,后面我们将针对各个要点进行详细的要点拆分。原创 2024-06-14 15:01:23 · 1340 阅读 · 0 评论 -
【MFC】两个ListBox控件数据交互
界面如图下所示: 候选数据列表的ID为: 已选数据列表的ID为: 可以使用以下代码往框中添加数据: 显示效果如下: 如果有多个数据,可以使用以下方法: 显示效果如下: 如果想让数据按照自己的顺序排序,可以在控件处将自动排序关闭: 实现代码如下: 效果如下: 可以看到“已选数据列表”中的数据是乱的,需要把该控件的自动排序也关掉: 关闭后数原创 2023-03-16 14:46:20 · 704 阅读 · 0 评论 -
【C++】Raw格式数据转换成Bmp图片
Raw格式数据转换成Bmp图片。原创 2023-02-28 17:12:39 · 1785 阅读 · 0 评论 -
【C++】加了<string.h>还是报“strlen:找不到标识符”的错误
预编译头一般包含了基本程序引用库、客户自定义库等,其中基本程序引用库就包含了常用的与C标准库对应的头文件,如标准输入头文件stdio.h、字符串头文件string.h等文件。问题出自于预编译头里面已经包含了一些基本的头文件,而且在编译前已经把这些库进行了预编译处理,我们再手动添加这些头文件就很容易被略过。把一个工程中的那一部分代码,预先编译好放在一个文件里(通常是以.pch为扩展名的),这个文件就称为预编译头文件。的为目的的预编译头:#include “stdafx.h”。出现问题的原因是使用了编译软件。原创 2022-11-11 12:17:30 · 5036 阅读 · 0 评论 -
【C++】如何理解函数调用中的传值和传址
如何理解函数调用中的传值和传址原创 2022-09-02 17:04:49 · 499 阅读 · 0 评论 -
【数据结构】十分钟透彻了解各种二叉树的基础概念
为什么要用二叉树?因为找数据更有优势。详细请参考下面第三点:排序二叉树树长这样:二叉树长这样,因为只有两个分叉,所以叫二叉:二叉树的左子树、右子树和根:当然左子树右子树和根是相对的:因为一个节点需要保存左子树指针、右子树指针以及自身的数据信息,所以一般会用链表的数据结构方式进行存储连接(因为是二叉树用链表,所以叫二叉链表):二叉树的遍历方式有三种:前、中、后序遍历,其实理解很简单,什么序代表的是根节点在哪个顺序被访问的意思:举个例子,下面的二叉树使用中序遍历。......原创 2022-08-28 14:51:06 · 497 阅读 · 0 评论 -
【MFC】使用TabControl创建Tab分页
一.拖曳控件在“工具箱”上选择“Tab Control”,将其放置在主窗口处: 调整至合适的位置:二.添加变量 在“资源视窗”中右键文件夹,选择“插入Didlog”,创建一个新的子tab窗口:随后会出现一个新的子窗口,在子窗口右键,点击“添加类”,为子窗口添加一个新类: 添加完成后就可以在资源管理器中看到新添加的类: 设置完成后,子窗口的事情就差不多了,现在我们...原创 2022-04-09 14:31:14 · 3728 阅读 · 1 评论 -
【C语言】free函数如何知道要释放多大空间
一.malloc函数 C 库中有个函数void *malloc(size_t size),该函数作用为分配所需的内存空间,并返回一个指向它的指针。参数:size-- 内存块的大小,以字节为单位。返回值:返回一个指针 ,指向已分配大小的内存。如果请求失败,则返回 NULL。二.free函数C 库中有个函数void free(void *ptr),该函数作用为释放之前调用 calloc、malloc 或 reallo...原创 2021-11-30 11:32:29 · 6022 阅读 · 1 评论 -
【C++】错误ELF类:ELFCLASS32
操作系统:UBUNTU 18.04.4 ARM64版本当使用dlopen调用动态库的时候,出现了打开失败的错误,调用dlerror()进行分析,发现出现了以下错误:XX.so:错误ELF类:ELFCLASS32调用以下指令查看动态库详细信息:file XX.so返回以下信息:libXXX.so: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, BuildID[sha1]=原创 2021-04-12 17:10:15 · 4001 阅读 · 0 评论 -
【C++】QT中不能使用关闭文件描述符Close()函数的解决方法
在QT中因为有一个同命名的函数QWidget::close(),用于关闭QT窗口等部件,所以直接使用close()函数会被误认为是在使用QT内部的函数,要想使用系统调用函数Close()来关闭文件描述符需要在前面添加 “::”,即“::Close()”来区分全局和局部的区别,当然,使用前记得还得加上头文件#include<unistd.h>,不然也是用不了的...原创 2020-12-27 18:05:54 · 2045 阅读 · 2 评论 -
【C++】二维数组初始化会出现的问题
题目:给定一串文本数据,以 “|” 为分隔符,将其进行分段处理。 文本数据:char Message[256] = { "水中月是天上月 | 眼前人是意中人 | 向来心是看客心 |奈何人是剧中人 | " };PS:以下编译器使用:VC++6.0博主比较水,第一时间想到的是用二维数组来进行分段,代码如下:char DstMessage[ ][50] = {0};char Begin=0,End=0,Index=0; for(;.原创 2020-11-24 11:31:13 · 1483 阅读 · 0 评论 -
【C/C++】获取二维数组相邻八个/四个方向的数据
假如有以下一个二维数组:std::vector<std::vector<int>> test = {{0, 0, 1, 0, 1}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0},原创 2020-07-28 14:34:36 · 2395 阅读 · 0 评论 -
【C语言】简单而不严谨地理解内存对齐
当再次看到自己半年前说的“有时间我会把内存对齐这个补上滴”,内心可是满满的懒惰不想动呀[doge]......下面是正文————————————————一.什么是内存对齐 众所周知,当CPU想从内存中取出数据时,会先将地址通过 地址总线 传输给内存,内存通过地址找到对应的数据,而后将数据通过 数据总线 传送至CPU中去。 假设地址总线和数据总线都分别有8根(如不加以说明,以下例子全部设定为地址总线 = 数据总线 = 8),那么CPU最大所能找到的地址范围...原创 2020-06-26 18:51:39 · 412 阅读 · 0 评论 -
【C++】如何随机生成整数不重复进行取用
最近忙公司项目的时候需要实现一个功能网上的方法多到无从选择,例如洗牌算法等等后来还是自己弄了一个更加贴切自己需求的接口—————————————————————————— 下面是正文 ——————————————————————————再做项目时需求如下:1.从一堆指定范围内随机生成的整数中抽一个数出来进行条件判断。 ...原创 2020-03-26 09:19:46 · 1974 阅读 · 0 评论 -
【c++】private里面的变量可以间接访问和修改嘛?
五月出差频繁只有趁着周末不加班拿出一点时间记录下最近学到的东西~——————————————下面是正文————————————————我们都知道,C++中有一个叫访问权限的知识点被定义在“private"中的方法或者对象理论上是无法直接访问的被定义在“public"中的方法或者对象理论上是可以访问的用以下一个简单的类来说明:#include<iostream&g...原创 2019-06-02 11:54:53 · 9057 阅读 · 3 评论 -
【c++】可以从子类中访问基类的私有变量吗?
答案是肯定的不然这篇博客就没有存在的意义了——————————————下面是正文————————————————首先来看下以下这个代码:#include <iostream>class Base{private: int x;public: int y;};class Sub: Base{public: int a; int b;...原创 2019-06-14 10:15:56 · 11079 阅读 · 4 评论 -
【c++】虚函数(一)——虚函数表的实质
话不多说直接进入主题————————————下面是正文——————————————众所周知,在一个类里面设置一个函数,函数并不在类中占有内存,例如下面这个例子:#include <iostream>class Base{public: Base() { x = 1; y = 2; } int x,y; void test() {...原创 2019-07-03 23:30:39 · 323 阅读 · 0 评论 -
【c++】虚函数(二)——虚函数表的验证
在上篇博文中,类中的首地址多出来四个字节以下将验证多出来的的四个字节究竟是不是虚函数表。————————————下面是正文—————————————— 在验证之前,首先来补充一些知识:函数指针 根据我以前写的一篇《【c语言】带你真正走进指针的世界——函数指针》中可以得知:函数名就是函数的指针,代表了函数的真实地址。以下为函数指针的简单运用:...原创 2019-07-11 15:54:41 · 363 阅读 · 0 评论 -
【c++】从交换函数(swap)例子中了解按值传递和按址传递
话不多说直接来个正文~————————————下面是正文——————————————如果此时需要你来编写一个函数需求是传进两个参数,对传进来参数进行数值交换,大多数人可能会写出以下的代码:#include <iostream>using namespace std; void swap(int x,int y){ int temp; temp = x...原创 2019-07-25 14:20:21 · 1319 阅读 · 0 评论 -
【c++】虚函数(三)——多态与绑定
不逼下自己永远不知道自己有多无知~————————————下面是正文——————————————虚函数的主要作用是实现多态。那什么是多态呢?先看以下这段代码:#include <iostream>class Base{public: int x; int y; Base() { x = 1; y = 2; } void pr() {...原创 2019-07-22 14:52:34 · 239 阅读 · 0 评论 -
【c++】虚函数(四)—— 构造(析构)函数可以是虚函数吗?
话不多说直接进入主题————————————下面是正文——————————————NO.1 :构造函数可以是虚函数吗? 答案是否定的~,可参照以下代码:#include <iostream>using namespace std;class test{public: int x; int y; virtual tes...原创 2019-07-31 09:57:14 · 384 阅读 · 0 评论 -
【python】用C++编写DLL动态库并且使用python进行调用
最近有个项目需要使用到python来调用C++编写动态连接库无奈在百度上的办法百花齐放跟着做也频频出错所以自己研究了一下调用的规则————————————下面是正文——————————————一.环境描述 首先说明下编译的环境:C++编译环境是 —>VS2015、python编译环境是 —> pycharm二.C++编写DLL ...原创 2019-08-06 10:23:19 · 1434 阅读 · 0 评论 -
【c++】因模板类导致的 LNK2019 错误:“ 无法解析的外部符号 ” 详解
最近在做项目的时候用到了模板类果不其然出现了那个错误LNK2019:无法解析的外部符号网上百度到的结果繁花怒放,大多数不符合我的需求,故自己研究了下C++的模板类规则,试图找出问题所在————————————下面是解决方法——————————————首先将出现这个错误应该怎么处理的方法写出来,解一些急着知道结果的攻城狮们燃眉之急:1.在主函数包含头文件时将实现模板类的函...原创 2019-08-21 11:16:23 · 19268 阅读 · 14 评论 -
【c++】你可能不知道的函数形参和This 指针
由于工作繁忙,最近渐渐地变得少写博客啦~不过断不是会断的,就只能随便写写(水水)这样吧~因为工作需要用到C++,所以可能更多地写C++吧,其他也会写,只要看情况吧~hiahiahiahia~——————————————下面是正文———————————————— 话不多说,先来看看一段功能为比较大小的代码:#include <iostream>...原创 2019-04-13 21:53:37 · 737 阅读 · 0 评论