C++的类和对象入门
目录
目录
目录
一、类
1.1类的定义
1.2访问限定符
1.3类域
1.4类的命名规范
1.5class和struct的默认访问权限
二、类的实例化
2.2对象的大小和存储
2.3空类的大小
三、this指针
3.1this指针的定义
3.2this指针的作用
3.2.1区分同名变量和局部变量
3.2.2返回对象自身的引用
结语
一起学习的小伙伴们,今天我们这篇文章将进入到C++里迷人的类和对象部分的入门,那么话不多说,和我一起进入学习吧!
一、类
1.1类的定义
在C++中,类的定义基本形式如下:
class 类名 {// 访问修饰符(public、private、protected)// 成员变量(数据成员)声明// 成员函数(方法)声明
};
例如:
class Rectangle {
public:int width;int height;int getArea(); // 成员函数声明
};// 成员函数定义在类外,需使用作用域解析运算符 ::
int Rectangle::getArea() {return width * height;
}
类把数据(成员变量)和操作这些数据的函数(成员函数)组合在一起,public成员可在类外访问,private成员默认只能在类内访问,protected用于继承相关的访问控制等情况。与C需要typedefin不同的是,类的类名就是类型,在使用的时候可以直接通过类名来初始化。
1.2访问限定符
- C++一种实现封装的方式,用类将对象的属性与方法结合在一块,让对象更加完善,通过访问权限选择性的将其接口提供给外部的用户使用。
- public修饰的成员在类外可以直接被访问;protected和private修饰的成员在类外不能直接被访间,protected和private是一样的,以后继承章节才能体现出他们的区别。
- 访问权限作用域从该访问限定符出现的位置开始直到下一个访问限定符出现时为止,如果后面没有访问限定符,作用域就到}即类结束。
- class定义成员没有被访问限定符修饰时默认为private,struct默认为public.
- 一般成员变量都会被限制为private/protected,需要给别人使用的成员函数会放为public。
1.3类域
类的作用域,决定了在类内定义的成员的可访问性。在类外使用类内成员定义函数的时候。要使用作用域解析符::指明这个成员是属于哪个类。
include <iostream>
using namespace std;
class Stack
{
public:
void Init(int n = 4);//缺省参数4
private:
//自定义域内变量
};
void Stack::Init(int n)//使用::来访问域内成员函数
{//函数体
}
并且,::确定了函数属于什么类,那么相应的,编译器可以在作用域里查找自定义成员变量。
1.4类的命名规范
有三种命名方式,主要作用是用于区分函数参数和类的成员变量,提高代码的可学性和维护性。
1、在成员变量前使用下划线 _
2、在成员变量前使用m_前缀
3、使用驼峰命名法
class Date {
private:int _year; // 使用下划线前缀int m_month; // 使用 m_ 前缀int dayOfMonth; // 使用驼峰命名法
public:void SetDate(int year, int month, int day) {_year = year;m_month = month;dayOfMonth = day;}
};
1.5class和struct的默认访问权限
class:class的默认访问权限是private,不能直接在外部引用。
struct:struct的默认访问权限是public,可以在外部直接引用。
二、类的实例化
关于类的实例化,首先先说类的定义,类是对对象的的抽象描述,它提供了对象的结构和行为,但是类的本身并不占用物理空间,只有在实例化操作的时候才会分配空间。
那么可以形象的理解成,类如何建造房屋的图纸,图纸不会占用土地,只有依照这个图纸建造的房屋才会占用土地。
#include <iostream>
using namespace std;class Date {
public:void Init(int year, int month, int day) {_year = year;_month = month;_day = day;}void Print() {cout << _year << "/" << _month << "/" << _day << endl;}private:int _year;int _month;int _day;
};int main() {Date d1;d1.Init(2024, 3, 31);d1.Print();Date d2;d2.Init(2024, 7, 5);d2.Print();return 0;
}
说明:这里的class Date是一个类
Date d1,Date d2是对类的两个实例化,在这里开辟了内存空间。
2.2对象的大小和存储
首先我们知道,类和结构体和一大区别是,在类中不仅可以存在成员变量,还可以不通过指针变量引用外界函数来直接在类里面定义函数。
注意:成员变量需要分配空间,但成员函数是存储在单独代码段中的一段指令。
#include <iostream> using namespace std;class A { private:char _ch; // 1 字节int _i; // 4 字节 };int main() {A a;cout << sizeof(a) << endl; // 输出对象的大小return 0; }
注意:这里运行结果是8并不是5,下面是具体解释:
在计算对象的大小的时候,会存在内存对其的情况,内存对其可以方便读取提高效率。
内存对齐指的是计算机系统为了提高数据访问效率,将数据存放在内存中按照特定规则对齐的方式。
基本数据类型会按照其自身大小或者特定对齐模数,被放置在内存地址为其大小倍数的位置上。比如4字节的整型,通常会放在能被4整除的内存地址处。结构体中各成员也遵循对齐规则,整体大小通常是其内部最大成员大小的整数倍。这样做能加快CPU读取数据速度,减少内存访问次数,但会造成一定的内存空间浪费。
2.3空类的大小
已知,类的大小是有类的成员变量决定,成员函数并不影响类的大小。那么如果一个类中没有成员函数,那么它的大小是多少呢?
直接给结论:空类的空间大小是一个字节。
为什么?下面是解释:
1、区分不同对象的地址:如果是零个字节,那么就会导致多个对象共享一个内存地址,导致冲突。
2、确保类的指针行为一致:指向不同对象时,他们也必须指向不同的内存地址,所以必须要有一字节的大小证明这个类“来过”
#include<iostream>
using namespace std;class EmptyClass {
public:void Print() {cout << "This is an empty class!" << endl;}
};int main() {EmptyClass e1, e2;cout << "EmptyClass 对象 e1 的大小: " << sizeof(e1) << " 字节" << endl;cout << "EmptyClass 对象 e2 的大小: " << sizeof(e2) << " 字节" << endl;return 0;
}
三、this指针
3.1this指针的定义
this指针是隐含于每一个非静态成员函数中的特殊指针,它指向这个成员函数的对象。
例如Date类Init函数实际上是这样的
#include <iostream>
using namespace std;class Date {
public:void Init(Date*const this,int year, int month, int day) //注意实际不能这么写
{this->_year = year;this->_month = month;this->_day = day;}void Print() {cout << _year << "/" << _month << "/" << _day << endl;}private:int _year;int _month;int _day;
};
请注意,在C++中,不能在实参1和形参的位置上显写this指针,这样会报错,编译器会自己处理对象之间的矛盾,但是可以在函数体里面使用this指针。
3.2this指针的作用
当我们在一个对象上去调用成员函数的时候,编译器一般会把该对象的地址作为this指针传递给成员函数。
所以,总的来说:
类的成员函数中去访问成员变量其实都是通过this指针去访问的,例如上文中在成员函数中的赋值操作。
3.2.1区分同名变量和局部变量
#include <iostream> using namespace std;class Date { public:void Init(int year, int month, int day) {this->_year = year;this->_month = month;this->_day = day;}void Print() {cout << _year << "/" << _month << "/" << _day << endl;}private:int _year;int _month;int _day; };
3.2.2返回对象自身的引用
Zyzzyz& add(int num) {this->a +=num;return *this; }
这样就可以通过使用 :类.add(n).add(m)这种格式来连续链式调用函数。
3.3.3获取对象的地址
#include <iostream> class Zyzzzyz { public:void printAddress(){std::cout<<"该对象的地址是:"<<this<<std::endl;} }int main() {Zyzzzyz obj;obj.printAddress();return 0; }
这样就可以通过this指针来得到obj的地址,并打印出来显示。
结语
至此,本文介绍的关于C++入门的部分知识正式结束,日后我会更新更多关于C++的基础入门知识,如果本文能帮助到阅读文章的你,就请点赞转发收藏吧,您的支持也是我继续学习和更新的动力,感谢支持!!
相关文章:
C++的类和对象入门
目录 目录 目录 一、类 1.1类的定义 1.2访问限定符 1.3类域 1.4类的命名规范 1.5class和struct的默认访问权限 二、类的实例化 2.2对象的大小和存储 2.3空类的大小 三、this指针 3.1this指针的定义 3.2this指针的作用 3.2.1区分同名变量和局部变量 3.2.2返回对象…...
【清华大学】DeepSeek从入门到精通完整版pdf下载
DeepSeek从入门到精通.pdf 一共104页完整版 下载链接: https://pan.baidu.com/s/1-gnkTTD7EF2i_EKS5sx4vg?pwd1234 提取码: 1234 或 链接:https://pan.quark.cn/s/79118f5ab0fd 一、DeepSeek 概述 背景与定位 DeepSeek 的研发背景 核心功能与技术特点(…...
deepseek使用记录18——文化基因之文化融合
文明长河中的生命浪花 在洛阳白马寺的银杏树下,年轻母亲指着"农禅并重"碑刻给孩子讲述祖辈耕作的故事;在哔哩哔哩的直播间里,00后女孩穿着汉服跳起街舞,弹幕飘过"这才是文化缝合怪"。当文明交融的宏大叙事照…...
Java 大视界 -- Java 大数据在智慧文旅游客流量预测与景区运营优化中的应用(110)
💖亲爱的朋友们,热烈欢迎来到 青云交的博客!能与诸位在此相逢,我倍感荣幸。在这飞速更迭的时代,我们都渴望一方心灵净土,而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识,也…...
面试题:说一下你对DDD的了解?
面试题:说一下你对DDD的了解? 在面试中,关于 DDD(领域驱动设计,Domain-Driven Design) 的问题是一个常见的技术考察点。DDD 是一种软件设计方法论,旨在通过深入理解业务领域来构建复杂的软件系统。以下是一个清晰、详细的回答模板,帮助你在面试中脱颖而出: DDD 的定义…...
网络编程——UDP
UDP编程使用套接字(Socket)进行通信。下面是基于UDP协议进行网络编程的基本步骤。 1. 创建套接字 首先,客户端和服务器都需要通过 socket() 系统调用创建一个UDP套接字。 2. 配置地址和端口 UDP是无连接的,因此你不需要像TCP一…...
【网络安全 | 渗透测试】GraphQL精讲二:发现API漏洞
未经许可,不得转载。 推荐阅读:【网络安全 | 渗透测试】GraphQL精讲一:基础知识 文章目录 GraphQL API 漏洞寻找 GraphQL 端点通用查询常见的端点名称请求方法初步测试利用未清理的参数发现模式信息使用 introspection探测 introspection运行完整的 introspection 查询可视化…...
代码随想录Day23 | 39.组合总和、40.组合总和II、131.分割回文串
39.组合总和 自己写的代码: class Solution { public:vector<int> path;vector<vector<int>> res;int sum0;void backtracking(vector<int>& candidates,int target,int startIndex){if(sum>target) return;if(sumtarget){res.pus…...
MyBatis 新手入门教程:基础操作篇
MyBatis 新手入门教程:基础操作篇 适合人群:无 MyBatis 使用经验者 (完整版3.3准时发,此篇为新手入门的基础操作) 一、MyBatis 是什么? 简单理解: MyBatis 是一个帮你操作数据库的工具&#x…...
zjbdt
嵌入式软件工程师可以通过考取相关职业证书来提升专业能力和职业竞争力。以下是几种含金量较高且广受认可的证书: 1. NIEH 嵌入式技术工程师证书 颁发机构:教育部考试中心级别:初级、中级、高级内容:涵盖嵌入式系统的基础理论、开…...
行为型模式 - 中介者模式 (Mediator Pattern)
行为型模式 - 中介者模式 (Mediator Pattern) 中介者模式的核心思想是将对象之间的复杂交互封装到一个中介者对象中,从而降低对象之间的耦合度。 import java.util.ArrayList; import java.util.List;// 抽象中介者类 abstract class TowerMediator {public abstra…...
如何使用C#与SQL Server数据库进行交互
一.创建数据库 用VS 创建数据库的步骤: 1.打开vs,创建一个新项目,分别在搜素框中选择C#、Windows、桌面,然后选择Windows窗体应用(.NET Framework) 2.打开“视图-服务器资源管理器”,右键单击“数据连接”࿰…...
同步类型对比
同步类型对比 特性准同步 (Quasi-Synchronization)完全同步 (Complete Synchronization)渐进同步 (Asymptotic Synchronization)定义系统状态在有限时间内接近同步,但存在微小误差。系统状态在有限时间内完全一致。系统状态随时间趋近于同步,但可能需要…...
python爬虫Scapy框架(1)
简介 什么是框架? 所谓的框,其实说白了就是一个【项目的半成品】,该项目的半成品需要被集成了各种功能且具有较强的通用性。 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非…...
java容器 LIst、set、Map
Java容器中的List、Set、Map是核心数据结构,各自适用于不同的场景 一、List(有序、可重复) List接口代表有序集合,允许元素重复和通过索引访问,主要实现类包括: ArrayList 底层结构:动态数组…...
2W8000字 LLM架构文章阅读指北
❝ 大模型架构专栏已经更新了30多篇文章。完整的专栏内容欢迎订阅: LLM 架构专栏 1、LLM大模型架构专栏|| 从NLP基础谈起 2、 LLM大模型架构专栏|| 自然语言处理(NLP)之建模 3、 LLM大模型架构之词嵌入(Part1) 3、 LLM…...
Milkv-duo256 接入tuya 云并实现远程智能控制
tuyaopen-embedded-core 是将 https://github.com/tuya/tuyaopen 连接 tuya 云相关核心组件重新组织,可快速嵌入至各种嵌入式平台使用。 tuyaopen-embedded-core 可通过 WiFi、有线以太网、CAT-1、4G 等多种方式接入涂鸦云,实现设备远程控制、OTA 等功能…...
Hadoop之02:MR-图解
1、不是所有的MR都适合combine 1.1、map端统计出了不同班级的每个学生的年龄 如:(class1, 14)表示class1班的一个学生的年龄是14岁。 第一个map任务: class1 14 class1 15 class1 16 class2 10第二个map任务: class1 16 class2 10 class…...
YOLOv8目标检测推理流程及C++代码
这部分主要是使用c++对Onnx模型进行推理,边先贴代码,过段时间再详细补充下代码说明。 代码主要分成三部分,1.main_det.cpp推理函数主入口;2.inference_det.h 头文件及inference_det.cpp具体函数实现;3.CMakeList.txt. 1.main_det 推理配置信息全部写在config.txt中,执行…...
【AVRCP】深入解析AVRCP应用层:功能支持与映射
在最近的项目开发中,深入研究了Audio/Video Remote Control Profile(AVRCP)的应用层特性。在蓝牙音频/视频远程控制规范(AVRCP)的架构中,应用层扮演着至关重要的角色,它定义了符合该规范的设备所…...
springboot之HTML与图片生成
背景 后台需要根据字段动态生成HTML,并生成图片,发送邮件到给定邮箱 依赖 <!-- freemarker模板引擎--> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-freemarker</artifa…...
Hive-04之存储格式、SerDe、企业级调优
一、主题 hive表的数据压缩和文件存储格式hive的自定义UDF函数hive的JDBC代码操作hive的SerDe介绍和使用hive的优化 二、要点 1. hive表的文件存储格式 Hive支持的存储数的格式主要有:TEXTFILE(行式存储) 、SEQUENCEFILE(行式存储)、ORC&…...
链表的概念和结构
文章目录 1. 链表的概念2. 链表的分类3. 单向不带头非循环链表3.1 接口设计(SList.h)3.2 接口实现(SList.c)1)打印和创建结点2)头尾插入删除3)查找和插入4)删除和销毁 3.3 完整代码S…...
使用AI后为什么思考会变得困难?
使用AI后为什么思考会变得困难? 我总结了四篇近期的研究论文,来展示AI是如何以及为什么侵蚀我们的批判性思维能力。 作者使用AI制作的图像 前言:作者在这篇文章中,借AI技术的崛起,揭示了一场悄然发生的思想博弈。表面…...
Github 2025-03-02 php开源项目日报Top10
根据Github Trendings的统计,今日(2025-03-02统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量PHP项目10Blade项目1JavaScript项目1Nextcloud服务器:安全的数据之家 创建周期:2796 天开发语言:PHP, JavaScript协议类型:GNU Affero Gene…...
智能座舱介绍
目录 智能座舱智能座舱的核心技术组成车载信息娱乐系统(IVI)数字仪表盘与HUD(抬头显示)语音交互与AI助手多屏联动与场景化交互生物识别技术智能座舱的发展趋势沉浸式体验情感化与个性化多模态交互融合车联网(V2X)生态扩展应用场景挑战与未来硬件系统软件系统关键技术智能…...
2025年能源工作指导意见
2025年是“十四五”规划收官之年,做好全年能源工作意义重大。为深入贯彻落实党中央、国务院决策部署,以能源高质量发展和高水平安全助力我国经济持续回升向好,满足人民群众日益增长的美好生活用能需求,制定本意见。 一、总体要求…...
豪越科技:智慧园区后勤单位消防安全管理,实时告警与整改闭环
在当今数字化、智能化飞速发展的时代,智慧园区已成为现代产业发展的重要载体。而园区后勤单位的消防安全管理,作为保障园区安全运营的关键环节,正面临着前所未有的挑战与机遇。豪越科技凭借其先进的技术和丰富的经验,为智慧园区后…...
zookeeper-docker版
Zookeeper-docker版 1 zookeeper概述 1.1 什么是zookeeper Zookeeper是一个分布式的、高性能的、开源的分布式系统的协调(Coordination)服务,它是一个为分布式应用提供一致性服务的软件。 1.2 zookeeper应用场景 zookeeper是一个经典的分…...
华为手机自助维修的方法
测试环境:华为荣耀 (全文完)...
基于Springboot博物馆文博资源库系统【附源码】
基于Springboot博物馆文博资源库系统 效果如下: 系统登陆页面 文物信息管理页面 流动申请页面 文物报修页面 个人信息页面 文物保修管理页面 系统主页面 文物类型页面 研究背景 随着信息技术的飞速发展,博物馆文博资源的管理与利用日益受到重视。传统…...
辛格迪客户案例 | 祐儿医药科技GMP培训管理(TMS)项目
01 项目背景:顺应行业趋势,弥补管理短板 随着医药科技行业的快速发展,相关法规和标准不断更新,对企业的质量管理和人员培训提出了更高要求。祐儿医药科技有限公司(以下简称“祐儿医药”)作为一家专注于创新…...
Git 2.48.1 官方安装与配置全流程指南(Windows平台)
一、软件简介 Git 是 分布式版本控制系统 的标杆工具,由 Linus Torvalds 开发,广泛应用于代码版本管理、团队协作开发等场景。2.48.1 版本优化了文件系统监控性能,并修复了跨平台兼容性问题。 二、下载准备 1. 官方下载地址 访问 Git 官网…...
MATLAB中asManyOfPattern函数用法
目录 语法 说明 示例 匹配尽可能多的模式实例 指定要匹配的最小模式数 指定要匹配的最小和最大模式数 asManyOfPattern函数的功能是模式匹配次数尽可能多。 语法 newpat asManyOfPattern(pat) newpat asManyOfPattern(pat,minPattern) newpat asManyOfPattern(pat,m…...
大模型推理时的尺度扩展定律
大模型推理时的尺度扩展定律 FesianXu at 20250212 at Wechat Search Team 前言 大模型的尺度扩展定律告诉我们:『LLM的性能会随着模型的参数量、模型的训练量、模型的训练数据量的增加而增加』。训练存在尺度扩展定律,测试也存在尺度扩展定律ÿ…...
迷你世界脚本世界UI接口:UI
世界UI接口:UI 彼得兔 更新时间: 2023-10-25 10:40:44 具体函数名及描述如下: 序号 函数名 函数描述 1 setGBattleUI(...) 设置战斗总结UI 2 world2RadarPos(...) 世界坐标转换到小地图 3 world2RadarDist(...) 世界长度转换到小地图 4 …...
局域网自动识别机器名和MAC并生成文件的命令
更新版本:添加了MAC 地址 确定了设备唯一性 V1.1 局域网自动识别机器名和MAC并生成文件的批处理命令 echo off setlocal enabledelayedexpansionREM 设置输出文件 set outputFilenetwork_info.txtREM 清空或创建输出文件 echo Scanning network from 192.168.20.1…...
神经网络之词嵌入模型(基于torch api调用)
一、Word Embedding(词嵌入)简介 Word Embedding(词嵌入): 词嵌入技术是自然语言处理(NLP)领域的一项重大创新,它极大地推动了计算机理解和处理人类语言的能力。 通过将单词、句子甚…...
微服务即时通信系统---(七)文件管理子服务
目录 功能设计 模块划分 业务接口/功能示意图 服务实现流程 服务代码实现 封装文件操作模块(utils.hpp) 获取唯一标识ID 文件读操作 文件写操作 编写proto文件 文件元信息 文件管理proto 单文件上传 多文件上传 单文件下载 多文件下载 RPC调用 服务端创建子…...
鸿蒙5.0实战案例:基于原生能力获取视频缩略图
往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录) ✏️ 鸿蒙(HarmonyOS)北向开发知识点记录~ ✏️ 鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~ ✏️ 鸿蒙应用开发与鸿蒙系统开发哪个更有前景&#…...
《Canvas修仙传·第三重天金丹境(下集)》 ——量子烟花与物理宇宙的混沌法则
各位道友久候!上集我们炼就了《灵蛇奇谭》的元神,今日将开启Canvas修仙路上最绚丽的篇章——掌控微观粒子的创世之力!(ノ≧∀≦)ノ 章前黑话词典 🔍 量子境术语表: 对象池(Object Po…...
Hutool - POI:让 Excel 与 Word 操作变得轻而易举
各位开发者们,在日常的 Java 开发工作里,处理 Excel 和 Word 文件是相当常见的需求。无论是从 Excel 里读取数据进行分析,还是将数据写入 Excel 生成报表,亦或是对 Word 文档进行内容编辑,传统的 Apache POI 库虽然功能…...
请谈谈 Node.js 中的流(Stream)模块,如何使用流进行数据处理?
1. Node.js中的流(Stream)模块 流的基本概念: 流是 Node.js 中用于处理流式数据的抽象接口。 它是一种高效的数据处理机制,适合处理大文件或高数据吞吐量的场景。 流主要有四种类型: Readable:可读流&am…...
DeepSeek 202502 开源周合集
DeepSeek 本周的开源项目体现了其在 AI 技术栈中的深厚积累,从硬件协同优化(FlashMLA)、通信库(DeepEP)、核心计算(DeepGEMM)到推理模型(DeepSeek-R1),覆盖了…...
《从0到1:用Python在鸿蒙系统开发安防图像分类AI功能》
在人工智能与移动应用深度融合的当下,类目标签AI功能成为众多行业提升效率和用户体验的关键技术。本文聚焦于HarmonyOS NEXT API 12及以上版本,以图像分类在智能家居安防领域的应用为例,为开发者详细阐述如何利用Python开发类目标签AI功能,助力鸿蒙技术在该领域的创新应用。…...
【机器学习chp10】降维——(核化)PCA + MDS + lsomap + 拉普拉斯特征映射 + t-NSE + UMAP
目录 一、降维的意义与本质 1、意义 2、本质 3、常见降维方法 (1)线性降维 (2)非线性降维 二、基于重构的降维 1、PCA 2、核化PCA (1)实现过程 步骤一:数据映射与核函数定义 步骤二…...
Visual Studio 2022 常用快捷键
1. 格式化代码:ctrl K,ctrl f 2. 向下插入一行:ctrl shift 回车 3. 全部变成大写:ctrl shift U 4. 全部变成小写:ctrl U 5. 查找: ctrl f 6. 删除当前行: ctrl shi…...
JavaWeb——CSS
一、什么是CSS CSS(Cascading Style Sheet):层叠样式表,是一种用于描述网页内容外观和样式的语言,主要用于控制网页的布局、颜色、字体、间距、动画等视觉效果。 CSS基本语法: CSS基本语法十分简单,基本由以下几个部分…...
Oracle 数据库基础入门(四):分组与联表查询的深度探索(下)
在 Oracle 数据库的操作中,联合查询与子查询是获取复杂数据的关键手段。当单表数据无法满足业务需求时,联合查询允许我们从多张表中提取关联信息,而子查询则能以嵌套的方式实现更灵活的数据筛选。对于 Java 全栈开发者而言,掌握这…...
【欢迎来到Git世界】Github入门
241227 241227 241227 Hello World 参考:Hello World - GitHub 文档. 1.创建存储库 r e p o s i t o r y repository repository(含README.md) 仓库名需与用户名一致。 选择公共。 选择使用Readme初始化此仓库。 2.何时用分支…...