![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
你只在游戏中存在
这个作者很懒,什么都没留下…
展开
-
c#基础知识
1.多态1.抽象类(abstract)1.您不能创建一个抽象类的实例。2.您不能在一个抽象类外部声明一个抽象方法。3. 通过在类定义前面放置关键字 sealed,可以将类声明为密封类。当一个类被声明为 sealed 时,它不能被继承。抽象类不能被声明为 sealed。using System;namespace PolymorphismApplication{ abstract class Shape { abstract public int area();转载 2021-09-30 11:39:18 · 165 阅读 · 0 评论 -
力扣多线程题目
按序打印输入: [1,3,2]输出: “firstsecondthird”解释:输入 [1,3,2] 表示线程 A 将会调用 first() 方法,线程 B 将会调用 third() 方法,线程 C 将会调用 second() 方法。正确的输出是 “firstsecondthird”。1.线程锁机制class Foo { mutex x1;mutex x2; unique_lock<mutex>lock1; unique_lock<mutex&.原创 2021-04-19 22:16:01 · 250 阅读 · 0 评论 -
智能指针的实现
1.智能指针:自己决定资源的释放使用类来模拟智能指针,且用起来像指针#include<iostream>#include<Cstring>using namespace std;//智能指针class Cs{public:Cs(){};void test(){cout<<"Cs"<<endl;}};class Sp{public: Sp(Cs* obj)//一定要是一个堆对象 因为要使用构造和析构 { m=obj; }原创 2021-03-15 18:17:43 · 128 阅读 · 0 评论 -
写时拷贝 浅拷贝 和深拷贝
采用引用计数器来记录浅拷贝的次数 合理释放资源当写新的内容时 使用NEW关键字进行深拷贝操作 并将之前的资源释放 且 引用计数-1#include<iostream>#include<Cstring>using namespace std;struct Refvalue{Refvalue(const char* pszName);~Refvalue(){if(m_pszName!=nullptr) {delete m_pszName; m_pszName=nu原创 2021-03-15 16:29:21 · 89 阅读 · 0 评论 -
几种智能指针的比较
1.auto_ptr(已经废弃,没有使用引用计数)头文件:memory原因:1.不能有两个auto_ptr对象拥有同一个内部指针的所有权,因为可能在某个时机,两者均会尝试析构这个内部指针。2.两个auto_ptr对象发生赋值时,内部指针的被拥有的所有权会发生转移,=号右值会丧失所有权,不再指向内部指针(且置为nullptr)原因1代码:#include<memory>#include<iostream>using namespace std;int main(){原创 2021-03-15 22:45:33 · 302 阅读 · 0 评论