摘要: C++运算符的重载 C++实现运算符的重载其实可以看做是函数的重载,既然可以看做是函数的重载就课又分为成员函数与友元函数 ###成员函数重载 使用成员函数方式的重载,默认第一个参数会传入this指针 #include <stdio.h> #include <string.h> #include <i 阅读全文
posted @ 2021-03-17 01:11 WangCoder 阅读(40) 评论(0) 推荐(0) 编辑
摘要: C++模板机制 C++的模板机制分为函数模板和类模板,类似于类与实例,类是一个抽象的概念,实例是具体的概念,对于模板来说类模板是抽象概念,类是具体概念;函数模板类似 ###函数模板 #include <stdio.h> #include <string.h> #include <iostream> 阅读全文
posted @ 2021-03-16 01:03 WangCoder 阅读(44) 评论(0) 推荐(0) 编辑
摘要: linux线程--线程间同步机制 linux实现线程间同步主要有如下三个手段: mutex(互斥变量)/cond(条件变量)/sem(信号量) ###mutex互斥变量 互斥变量是实现线程同步的一个重要手段,通过对互斥变量加解锁机制,可以实现线程的同步。 一个线程对一个互斥变量加锁,而其他任何一个线 阅读全文
posted @ 2021-03-15 23:45 WangCoder 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 析构函数是类的特殊成员函数,当类对象的声明周期结束时,会自动执行析构函数。析构函数并不是删除对象,而是在撤销对象所占用的内存之前完成一些清理动作,使得这部分内存可以被新对象使用。析构函数不返回任何值也没有参数,所以析构函数不能被重载,一个类可以有多个构造函数,但是只有一个析构函数。 main.h c 阅读全文
posted @ 2021-03-09 23:48 WangCoder 阅读(26) 评论(0) 推荐(0) 编辑
摘要: main.h class Base { public: Base(); ~Base(); private: int age; }; main.cpp #include<stdio.h> #include<string.h> #include<iostream> #include "main.h" i 阅读全文
posted @ 2021-03-07 22:46 WangCoder 阅读(34) 评论(0) 推荐(0) 编辑
摘要: ####恰当的使用引用 main.h class Time { public: void set_time(Time& t, int hour, int minu, int sec); void show_time(Time& t); private: int hour; int minu; int 阅读全文
posted @ 2021-03-06 00:04 WangCoder 阅读(35) 评论(0) 推荐(0) 编辑
摘要: linux线程创建函数 pthread_create函数是(linux/unix/macos)等操作系统的创建线程的函数,它的功能是创建线程。 函数原型如下: #include<pthread.h> int pthread_create( pthread_t *restrict tidp, //新创 阅读全文
posted @ 2021-03-05 23:47 WangCoder 阅读(743) 评论(0) 推荐(0) 编辑
摘要: 解释一下为什么会有面向对象的编程: 对于一个内容简单,流程线性,规模较小的问题,我们可以从解决问题的角度出发,详细描述程序的每一步涉及的数据结构以及对其的操作;但是当程序规模较大,功能模块较多,流程复杂,运行场景多变的情况下,要事先安排好一切既定步骤简直是不可能的,面向对象的程序设计方法就是为了解决 阅读全文
posted @ 2021-03-04 00:57 WangCoder 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 重载:是指在同一个作用域内(比如一个类内部),函数根据参数类型或者参数个数等有关函数参数的差异声明不同函数,不能只根据函数返回值重载函数,如: class Base { public: Base() = default; ~Base() = default; public: void functio 阅读全文
posted @ 2021-02-09 01:31 WangCoder 阅读(947) 评论(0) 推荐(0) 编辑
摘要: 30天自制操作系统-day9 这次我们更改main.c以及相关文件,生成任务栏,只需修改main.c如下 main.c #include<header.h> void bootmain(void){ //注意这里的函数名字为bootmain,因为在entry.S中设定的入口名字也是bootmain, 阅读全文
posted @ 2021-02-03 01:44 WangCoder 阅读(74) 评论(0) 推荐(0) 编辑