![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
Niya-m
这个作者很懒,什么都没留下…
展开
-
博弈算法实现三子棋
用博弈树算法实现井字棋游戏。 井字棋游戏是一种简单的棋类游戏,在3*3的棋盘上,两人轮流下子,谁的棋子先连成3颗一条直线,谁就赢了,可以横着、竖着、斜着。博弈树算法是用搜索来解决这类问题的算法,井字棋游戏步数较少,很容易用博弈树算法实现#include<iostream>#include<stdlib.h>#include<stdio.h>using ...原创 2018-06-25 22:57:27 · 3073 阅读 · 1 评论 -
【c++】设计特殊的类
设计一个特殊的类,该类只能在堆上创建对象将类的析构函数声明为private,但是为了创建该类的对象,则必须提供创建对象和释放对象的接口,用static函数成员实现:class HeapOnly{public: static HeapOnly *CreateInstance() { HeapOnly *obj = new HeapOnly; ...原创 2018-08-25 20:15:27 · 124 阅读 · 0 评论 -
【面试题】跳台阶
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。假设,一级台阶,有f(1)种方法,二级有f(2)种,以此类推,n级有f(n)种方法。 可以看出,f(1)=1;f(2)=2。那么,假设n级台阶,那么第一步就有两种情况,跳一步,跟跳两步。情况一:跳一步,那么接下去的就是f(n-1);情况二:跳两步,那么接下去的就是f(n-2)。所以总数...原创 2018-08-27 20:51:26 · 526 阅读 · 0 评论 -
【C++】实现Myvector和myList
用C++封装顺序表: 代码:#pragma once#include<iostream>#include<assert.h>using namespace std;typedef int DataType;class Myvector{public: //析构空Myvector Myvector() :_ar...原创 2018-08-27 18:25:52 · 864 阅读 · 0 评论 -
类的默认成员函数与友元函数
在C++中,类与C语言中的结构体类似,类与结构体的不同之处便是在其内部多了几个成员函数还有几个访问限定符,访问限定符有public(公共)、protected(保护)、private(私有),而成员函数总的来说共包括六大类,他们便是类与结构体的不同之处,六大默认成员函数分别是构造函数,拷贝构造函数,析构函数,赋值操作符重载,取地址操作符重载和const修饰的取地址操作符重载。 构造函数 ##...原创 2018-08-22 20:59:09 · 553 阅读 · 0 评论 -
【c++】类与对象
类&对象类和对象(class)是两种以计算机为载体的计算机语言的合称。 对象是对客观事物的抽象,类是对对象的抽象。 类是一种抽象的数据类型。 它们的关系是: 类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。什么是类类是 C++ 的核心特性,通常被...原创 2018-08-22 19:25:29 · 157 阅读 · 0 评论 -
c++之内联函数
内联函数定义: C++ 内联函数是通常与类一起使用。如果一个函数是内联的,那么在编译时,编译器会把该函数的代码副本放置在每个调用该函数的地方。以inline修饰的函数叫内联函数。编译时c++编译器会在调用内联函数的地方展开,没有函数压栈的开销,内联函数提升程序运行的效率。如果想把一个函数定义为内联函数,则需要在函数名前面放置关键字 inline,在调用函数之前需要对函数进行定义。如果...原创 2018-08-18 22:06:39 · 527 阅读 · 0 评论 -
c++之引用
C++中的引用: 定义引用的表示方法与定义指针相似,只是用&代替了*。引用(reference)是c++对c语言的重要扩充。引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。编译器不会为引用变量开辟内存空间,它和它引用的变量共用同一块内存空间。 其格式为:类型 &引用变量名 = 已定义过的变量名。引用的特点:一个变量可取多个别名。引用必须初始...原创 2018-08-18 21:35:06 · 144 阅读 · 0 评论 -
c++初识
c++是什么C++语言是一种通用的,区分大小写的自由格式编程语言,支持面向对象,过程和通用编程。C++是一种中级语言,因为它包含高级语言和低级语言特性。面向对象编程(OOP) C++支持面向对象编程,C++中使用的面向对象编程的四个主要支持是:继承多态性封装抽象C++的标准库 标准C++编程分为三个重要部分:核心库包括数据类型,变量和文字等标准库包括操作字符串...原创 2018-08-18 20:33:54 · 197 阅读 · 0 评论 -
【C++】自定义一个Date类
学习了C++的一些类的默认成员函数,运算符重载等内容后,自已定义并实现了一个较为完整的Date类: test.cpp:class Date{public: Date(int year=1900, int month=1, int day=1)//构造函数 { _year = year; _month = month; ...原创 2018-08-15 16:40:03 · 2063 阅读 · 0 评论 -
【c++】String类的深浅拷贝
浅拷贝 ##—–位拷贝浅拷贝是将原始对象中的数据型字段拷贝到新对象中去,将引用型字段的“引用”复制到新对象中去,不把“引用的对象”复制进去,所以原始对象和新对象引用同一对象,新对象中的引用型字段发生变化会导致原始对象中的对应字段也发生变化。 - 概念: 将一个对象中的内容原封不动的拷贝到另一个对象中,多个对象共享同一个资源。后果: 在销毁对象时一个资源被释放多次引起程序崩...原创 2018-08-25 22:00:58 · 461 阅读 · 0 评论