<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_28809149的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_28809149</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_28809149]]></copyright><item><title><![CDATA[Vue3从零开始系列-07_模板语法]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/120181258</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/120181258</guid><author>qq_28809149</author><pubDate>Wed, 08 Sep 2021 15:44:59 +0800</pubDate><description><![CDATA[官方文档很全
这里稍微列一下
DOM
v-once 带上后，就渲染一次，你改数值也不会变
&lt;p&gt;{{ msg }} &lt;/p&gt;
&lt;p v-once&gt;{{ msg }}&lt;/p&gt;

v-html 不进行渲染，原样输出
&lt;p&gt;Using mustaches: {{ rawHtml }}&lt;/p&gt;
&lt;p&gt;Using v-html directive: &lt;span v-html="rawHtml"&gt;&lt;/span&gt;&]]></description><category></category></item><item><title><![CDATA[Vue3从零开始系列-06_数据结构&生命周期]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/120178827</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/120178827</guid><author>qq_28809149</author><pubDate>Wed, 08 Sep 2021 14:40:18 +0800</pubDate><description><![CDATA[这里我走马观花的说一下数据结构和生命周期
具体，可以看下官方
但我个人感觉有点不好理解。说说我的看法。
数据结构
&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
	&lt;meta charset="utf-8"&gt;
	&lt;title&gt;05_VUE3_Study_组件化应用构建&lt;/title&gt;
	&lt;meta charset="utf-8"&gt;
	&lt;meta author="Daniel_shi"&gt;
&lt;/he]]></description><category></category></item><item><title><![CDATA[Vue3从零开始系列-05_组件化应用构建]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/120175970</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/120175970</guid><author>qq_28809149</author><pubDate>Wed, 08 Sep 2021 14:01:53 +0800</pubDate><description><![CDATA[组件化应用构建

啥意思？就是一种思想，化大为小。一个大问题，我们可以分成几个小问题。小问题解决了，大问题就间接解决了。
我们的任务是做个界面，界面分成几个小的地方，小地方搞定，即界面搞定。
这里VUE把这个小地方叫 “组件”。Component。当然也有其他的概念，比如Prefab预制件，Template模板，几种概念杂糅到一起，总之就是大化小的思想。

...]]></description><category></category></item><item><title><![CDATA[Vue3从零开始系列-04_条件与循环]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/120175094</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/120175094</guid><author>qq_28809149</author><pubDate>Wed, 08 Sep 2021 11:15:22 +0800</pubDate><description><![CDATA[JavaScript 数据类型：数值、字符串值、数组、对象等等
var length = 7;                             // 数字
var lastName = "Gates";                      // 字符串
var cars = ["Porsche", "Volvo", "BMW"];         // 数组
var x = {firstName:"Bill", lastName:"Gates"};    // 对象 

var x = tru]]></description><category></category></item><item><title><![CDATA[Vue3从零开始系列-03_用户输入]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/120174047</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/120174047</guid><author>qq_28809149</author><pubDate>Wed, 08 Sep 2021 10:47:19 +0800</pubDate><description><![CDATA[用户输入
什么是输入？就是用户通过设备终端，像计算机录入信息。
输出？就是计算机把结果返回给用户。
说白了，就是I/O操作。
再直白点，鼠标点击，键盘输入。显示器显示。
这里又需要提到一个概念——事件（event）。每次设备有东西进来，会触发一个事件，类似OnClickEvent，OnDoubleClickEvent这种。这里我不方便说太多，我也没这个能力。具体有兴趣请检索关键词“JS事件循环与消息队列”
参考：资料
其实你也不需要知道太多。
现在我就需要干一件事，我鼠标点了，键盘按了，你给我反馈。Just]]></description><category></category></item><item><title><![CDATA[Vue3从零开始系列-02_响应式]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/120163556</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/120163556</guid><author>qq_28809149</author><pubDate>Tue, 07 Sep 2021 18:13:18 +0800</pubDate><description><![CDATA[这里参考
官方教程
复制之前的模板，新建一个

02_VUE3_Study_响应式.html

&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
	&lt;meta charset="utf-8"&gt;
	&lt;title&gt;VUE3_Study_响应式&lt;/title&gt;
	&lt;meta charset="utf-8"&gt;
	&lt;meta author="Daniel_shi"&gt;
&lt;/head&gt;
&lt;body&]]></description><category></category></item><item><title><![CDATA[Vue3从零开始系列-01_环境搭建]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/120162611</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/120162611</guid><author>qq_28809149</author><pubDate>Tue, 07 Sep 2021 17:44:23 +0800</pubDate><description><![CDATA[环境搭建
这里的环境搭建，就是我要看到这些东西怎么开发。
下载
基本2个思路。
1.直接在web上写代码，上手干
2.自己把材料准备好，写完，运行
我选的是第2种，我不想弄的很复杂。说说准备
1.一个文本编辑器（EditPlus，Notepad，Sublime）
这里我用的Sublime
2.这里提供几个网站，把代码下载一下
https://www.jsdelivr.com/package/npm/vue
https://unpkg.com/browse/vue@3.2.9/dist/
也可以参考一下官网安]]></description><category></category></item><item><title><![CDATA[Vue3从零开始系列-基本概念]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/120161544</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/120161544</guid><author>qq_28809149</author><pubDate>Tue, 07 Sep 2021 17:08:17 +0800</pubDate><description><![CDATA[既然你打开了这篇文章，你或多或少知道VUE是什么。也行你是Vue.js 2版本的老鸟，也行你是刚想看看前端的新手。这篇文章将从我的角度出发（菜鸟角度），写一些我对于Vue.js 3版本的理解和学习感悟。如果不对，欢迎指正。
什么是VUE？

...]]></description><category></category></item><item><title><![CDATA[Qt - QWebChannel实现网页与C++程序双向通信]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/116990018</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/116990018</guid><author>qq_28809149</author><pubDate>Tue, 18 May 2021 16:12:17 +0800</pubDate><description><![CDATA[这里实现的内容，在Qt里嵌入一个Html网页。这里使用了QWebEngineView来实现。
然后要让网页和C++怎么交互呢？
这里需要几个关键的类
QWebChannel
然后就是一个继承自QObject的类
#include &lt;QDebug&gt;
#include &lt;QMessageBox&gt;

class Test: public QObject
{
	Q_OBJECT

public:
	Test(QObject *parent = nullptr);
	~Test();

sig]]></description><category></category></item><item><title><![CDATA[SDL - 事件]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/116590915</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/116590915</guid><author>qq_28809149</author><pubDate>Mon, 10 May 2021 11:15:04 +0800</pubDate><description><![CDATA[#include &lt;stdio.h&gt;
#include "SDL.h"
#include "SDL_test_images.h"

#pragma comment(lib, "SDL2main.lib")
#pragma comment(lib, "SDL2.lib")
#pragma comment(lib, "SDL2test.lib")

#define WIDTH 800
#define HEIGHT 600


enum PicType {
	Normal,
	Left,
	Right]]></description><category></category></item><item><title><![CDATA[SDL - 加载图像]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/116528352</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/116528352</guid><author>qq_28809149</author><pubDate>Sat, 08 May 2021 17:41:37 +0800</pubDate><description><![CDATA[#include &lt;stdio.h&gt;
#include "SDL.h"
#include "SDL_test_images.h"

#pragma comment(lib, "SDL2main.lib")
#pragma comment(lib, "SDL2.lib")
#pragma comment(lib, "SDL2test.lib")

#define WIDTH 800
#define HEIGHT 600

int main()
{
	if (SDL_Init(SDL_INIT_E.]]></description><category></category></item><item><title><![CDATA[SDL - Game Framework - Tutorial Basics]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/116525846</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/116525846</guid><author>qq_28809149</author><pubDate>Sat, 08 May 2021 15:01:18 +0800</pubDate><description><![CDATA[大部分游戏由5个功能模块组成。


初始化(Initialize)
加载数据（纹理，地图，NPCs等）


事件(Event)
输入事件(鼠标，键盘，游戏手柄等）


循环(Loop)
数据更新(NPCs在屏幕上移动，血条改变等）


渲染(Render)
呈现到屏幕上的一切画面。此过程不涉及数据操作，相关操作在Loop里实现。


清理(Cleanup)
清理资源加载，确保离开游戏后资源释放。


用代码解释类似于这种
Initialize();
 
while(true) {
    Events();]]></description><category></category></item><item><title><![CDATA[SDL简介]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/116525236</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/116525236</guid><author>qq_28809149</author><pubDate>Sat, 08 May 2021 14:05:21 +0800</pubDate><description><![CDATA[SDL(Simple DirectMedia Layer)
这是什么？
Simple DirectMedia Layer（简称SDL）是一个跨平台的开发库。用于提供音频，键盘，鼠标，游戏手柄和经由OpenGL和Direct3D的图形硬件的底层接口（low level）。它被用于视频回放软件，模拟器和主流游戏，很多游戏荣获Valve的奖项，其中著名的有Humble Bundle。
SDL官方支持Windows，Mac OS X, Linux, iOS, 和 Android。以为其他一些平台的支持可能在源码中可]]></description><category></category></item><item><title><![CDATA[【C语言】指针数组和多维数组]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/116271049</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/116271049</guid><author>qq_28809149</author><pubDate>Thu, 29 Apr 2021 17:16:00 +0800</pubDate><description><![CDATA[数组：一块连续的空间，存放相同数据类型的数据。
指针数组：就是一个数组，数组里的元素是指针。
多维数组：也是一个数组，数组里的元素是数组。
情景再现
我们知道
char * str = "hello";

这里用的是64位操作系统：
str是一个指针，指向一个字符串，字符串里面的内容是hello。
一个指针所占内存是8个char类型的大小，也就是8个字节（Byte）。
"hello"字符串有5个字母，每个字母占一个char，另外末尾其实有一个’\0’的结尾符，也在一个char。所以一般字符串大小是字符串的能]]></description><category></category></item><item><title><![CDATA[【C语言】 extern与static]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/116237944</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/116237944</guid><author>qq_28809149</author><pubDate>Wed, 28 Apr 2021 17:22:12 +0800</pubDate><description><![CDATA[【C语言】 extern与static
Test.c
#include &lt;stdio.h&gt;

int main()
{
    extern int a;
    printf("a:%d\n",a);
}

f1.c
int a = 111;

这样是没有问题的
打印111
但这个时候
f2.c也在你的项目中，正好不巧也有个int 型的变量a
int a = 222;

类似于有个 _a already defined in f1.obj报错！
这里要讨论一下编译。编译以c问一个单独的编译单元]]></description><category></category></item><item><title><![CDATA[【C语言】转义字符]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/116233762</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/116233762</guid><author>qq_28809149</author><pubDate>Wed, 28 Apr 2021 15:16:09 +0800</pubDate><description><![CDATA[【C语言】转义字符




字符
含义
编码
字符
含义
编码




\n
换行
10
\’
单引号
39


\t
制表符
9
\"
双引号
34


\b
退格
8
\a
鸣铃
7


\r
回车
13
\ddd
1~3位八进制数所代表的字符
0ddd


\\
反斜杠
92
\xhh
1~2位十六进制数所代表的字符
0xhh


#define  _CRT_SECURE_NO_WARNINGS
#include &lt;stdio.h&gt;

main(int argc, char* argv[]]]></description><category></category></item><item><title><![CDATA[【C语言】%d与%u]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/116232731</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/116232731</guid><author>qq_28809149</author><pubDate>Wed, 28 Apr 2021 14:50:33 +0800</pubDate><description><![CDATA[【C语言】%d与%u




二进制数
%d
%u




0000 0000 0000 0000 0000 0000 0000 0000
0
0


0000 0000 0000 0000 0000 0000 0000 0001
1
1


0000 0000 0000 0000 0000 0000 0000 0010
2
2


0000 0000 0000 0000 0000 0000 0000 0011
3
4


0111 1111 1111 1111 1111 1111 1111 1111
21]]></description><category></category></item><item><title><![CDATA[【C语言】sizeof运算符]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/116232167</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/116232167</guid><author>qq_28809149</author><pubDate>Wed, 28 Apr 2021 14:11:34 +0800</pubDate><description><![CDATA[【C语言】sizeof运算符




前缀
声明
类型
字节




signed / unsigned
int
整型
4


signed / unsigned
long int
长整型
4


signed / unsigned
short int
短整型
2


signed / unsigned
char
字符型
1



float
单精度实型
4



double
双精度实型
8


#define  _CRT_SECURE_NO_WARNINGS
#include &lt;stdio.h&g]]></description><category></category></item><item><title><![CDATA[【C语言】整型常量]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/116229733</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/116229733</guid><author>qq_28809149</author><pubDate>Wed, 28 Apr 2021 11:28:27 +0800</pubDate><description><![CDATA[【C语言】整型常量




整型常量
前缀
举例
格式符




十进制常量
无前缀
013
%d


八进制常量
0
013
%o


十六进制常量
0x或0X
0xa3、0XA3
%x或%X


注意：C语言没有二进制常量
#define  _CRT_SECURE_NO_WARNINGS
#include &lt;stdio.h&gt;

main(int argc, char* argv[])
{
	int a = 12, b = 012, c = 0x12;
	printf("全部转换为十进制输出:]]></description><category></category></item><item><title><![CDATA[【C语言】整数的范围]]></title><link>https://blog.youkuaiyun.com/qq_28809149/article/details/116229318</link><guid>https://blog.youkuaiyun.com/qq_28809149/article/details/116229318</guid><author>qq_28809149</author><pubDate>Wed, 28 Apr 2021 11:13:00 +0800</pubDate><description><![CDATA[【C语言】整数的范围

0000 0000 = 1字节 = 1 Byte =  8位2进制数 = 8Bits
int = 4字节 = 整型

二进制形式

0000 0000 0000 0000 0000 0000 0000 0000 等于 0
0000 0000 0000 0000 0000 0000 0000 0001 等于 1
0000 0000 0000 0000 0000 0000 0000 0010 等于  2
0000 0000 0000 0000 0000 0000 0000 0011等于 ]]></description><category></category></item></channel></rss>