Vanadium的小屋御用公告板
五一计划
有谁五一要卑微留校阴暗爬行呐? 哦, 是我啊
那就写一份计划书吧
整理笔记: 计算机系统I 的相关笔记, 参考 slides, 学长的资料
https://note.hobbitqia.cc/ICS/
填坑: 继续学习 C++ 到头秃, 填补游戏开发日经记录贴
肝 DDL: 系统 lab4 你把大家都害亖re!
史纲头脑风暴
最重要的!!! 摸鱼
2024/04/27 by Vanadium
暂时关闭评论系统
由于博客代码重构, 评论系统暂时关闭, 如有联系需要请参考 关于
2024/03/25 by Vanadium
博客图片迁移
由于之前拿 Github 做图床, 访问时的速度受到极大限制, 现准备逐渐迁移图片到 ImageOss
2024/03/21 by Vanadium
小屋评论系统测试版上线:D
评论系统基于Waline, 部署在leancloud(国际版), 有什么问题都和我没关系(才怪啊喂)
测试版的评论系统有以下特性:
需要登录(建议使用: github)
显示ip, 浏览器, 操作系统(后期可能隐藏)
评论框样式不符合小屋整体风格(烤柿粥后必改 ...
Re:从零开始的C++游戏开发 | 日经记录贴
学习了那么那么多(其实也就一点点)的 C++ 和 OOP 的思想, 不来点有意思的实战有什么意思呢? 正巧最近在B站冲浪的时候刷到一个宝藏视频合集, 介绍了从零开始的C++游戏开发, 于是跃跃欲试…
视频链接: 从零开始的C++游戏开发
代码仓库: https://github.com/Z-Vanadium/Cpp-game-development
版本发布:
V1.0: https://vanadium.lanzoum.com/iQQVy1w15k8d 密码:6gji
Day 1
环境搭建
VSCode + OpenGL 太难配置了, 浪费一个下午, 最终决定用懒人 IDE – VS, VS 赛高!!!
IDE: Visual Studio Community 2022
图形库: EasyX
位图编辑: Picxel Studio
VS
安装时仅需勾选"使用C++的桌面开发"
EasyX
安装最新版本, 打开后为自己将要使用的 VS C++ 安装 EasyX
环境测试
打开 VS, 创建空 C++ 项目命名为 demo, 新建 main.cpp, ...
FDS | 常见排序算法实现 C 语言版
无聊写了下 C 语言实现的各种排序算法
预处理
由于 C 语言没有多态, 只考虑对某个类型排序, 以 int 类型为例子
#include<stdio.h>#include<stdlib.h>#define ElemType int
辅助函数
定义谓词函数和交换函数
// 表示第一个参数大于第二个参数int greater(const ElemType* x, const ElemType* y){ return *x > *y;}// 表示第一个参数小于第二个参数int less(const ElemType* x, const ElemType* y){ return greater(y, x);}void swap(ElemType* x, ElemType* y){ ElemType tmp; tmp = *x, *x = *y, *y = tmp;}
函数接口
统一接口格式如下
void sort(ElemType* base, size_t n, int (*p ...
C++ | Formatting & Print Library
本文仍为草稿
原文地址: https://hackingcpp.com/cpp/libs/fmt.html
前言
Formatting & Print 库(fmt库)是一个可以高效且安全地将 C 标准输入输出库转化为 C++ 输入输出流的现代 C++ 库(C++20 出现, C++23 加入标准库)
相比之前废拉不堪的输入输出函数, Formatting & Print 库有如下特性:
更快
更便捷
类型安全
由于目前大多数编译器并没有实现对 C++23 中 print 库的支持, 我们依然使用 C++20 的 fmt 库演示格式化与输出操作
PTA 的 C++ 编译器为 gcc 11.4.0, 只支持到 C++17, 所以在 PTA 平台上用不了这么好用的东西
前期准备
由于 fmt 库不存在于 C++20 的标准库中, 所以我们要手动引入
VSCode with mingw
首先, 删除.vscode配置文件, 在 IDE 界面按下 F5 查看 VSCode 使用的编译器的路径
在任意空文件夹下运行下面的 git 命令获取 fmt 库
g ...
C++ | 函数对象 & 匿名函数
本文仍为草稿
在 C++ | STL III 的最后, 我们曾简单地谈到了函数对象和匿名函数
函数对象
众所周知, C++ 出现的一个主要目的就是实现面向对象程序设计(Object-Oriented Program), 在先前的三篇有关 STL 的文章中我们详细讨论了什么是对象, 实际上, 早在 C++98 时代, C++ 中的对象的概念就不止限定在类或结构体上面, 函数也可以是 “对象”
C++98 提供了有关函数对象的库 <functional>, 引入这个库
#include<functional>
这个库提供了很多基础的预定义函数对象, 帮助库 <algorithm> 中算法的实现, 包括了内置函数对象, 谓词等
内置函数对象
下面是一个实例, 我们用类型 int 实例化了加减乘除和取模五种运算函数, 调用这些运算函数对象, 和直接使用运算符并没有差别, 但是这种写法更加符合 “泛型” 的概念–即我们可以对不同的对象使用一样的函数, 达到各自的效果
int main(){ auto _plus = std::plu ...
C++ | 继承
这是 C++ 网课学习笔记
继承与 hiding
回顾之前给出的代码示例
class Shape { // 基类 Shapeprivate: void prepare() { /* 做一些准备(例如准备画笔)*/ } void finalize() { /* 做一些后续处理(例如重置画笔)*/ }public: Point center; // 共有的成员变量 void draw() { // 共有的成员函数 prepare(); do_draw(); finalize(); } virtual void do_draw() = 0; // 要求所有派生类都实现 do_draw()};class Circle : public Shape { // Circle 继承 Shapepublic: int radius; // 独有的成员变量 void do_draw( ...
信息安全原理与数学基础
基本信息
授课教师:zbs
信息安全原理(不做考试要求)
数理逻辑
集合论
图论
代数系统
概率论
数据结构基础
Basic Infomation
Teachers: yzq
See Also: Foreverhyx’s FDS notes
Introduction
Algorithm Analysis
Linear Table
Tree
Heap
Disjoint Set
Graph - Topologic Sort
Mid Term Record
计算机系统I
Basic Infomation
Teachers: wht, ll
Lab Docs: 浙江大学24年春夏系统贯通一实验( ZJU intranet required )
Because of some reasons, Chapter 04 should change position with Chapter 05
Index
Tittle
Chap(s)
Introduction
01
Binary Representation
02, 03, 05
Digital Logic
04, 06, 07, 08
Combinational Logic Design
09, 10
Introduction
Binary Representation
Digital Logic
Combinational Logic Design
微积分II [暂停更新维护]
微积分好难
暂停更新 & 维护
基本信息
授课教师: bwh
上课教材: 《微积分》(sdk版)
常见积分公式
第 11 章 级数
第 7 章 矢量代数与空间解析几何
第 8 章 多元函数微分学