c++类的基础
1、抽象:
抽象出公有特性,包括公有动作,公有数据。
2、类:类是具有相同属性和行为的一组对象的集合(变量和函数)
声明格式:
class 类名(Dog)
{
类体:(数据和函数成员)默认为私有成员,结构体默认为公有成员
}
3、类成员的访问权限:public ,private,protected
3.1函数成员的实现:
主要有两类:1、在直接申明函数成员时实现
2、在类的外部实现(内联inline 函数和普通函数)
#include<iostream>
using namespace std;
class Dog
{
private:
int age;
public:
int func(int a);
int func2(int c);
int func1(int b)//类内部实现的函数成员
{
return age = b;
}
};
inline int Dog::func(int a)//外部实现的内联函数
{
return age = a;
}
int Dog::func2(int c)//外部实现的普通函数
{
while(c<5)
{
c++;
}
return c;
}
int main()
{
Dog d1;
int k = d1.func(3);
int j = d1.func1(4);
int q = d1.func2(0);
cout<<"k= "<<k<<"\n";
cout<<"j= "<<j<<"\n";
cout<<"q= "<<q<<"\n";
}
结果:
k= 3
j= 4
q=5
-------------------------------------------------------------------
4、对象:对象就是变量,是类的实例化---->用一个类描述一个对象(属性和动作(数据和函数))
类型 变量名
class Dog d1;或者去掉类的关键字 Dog d1;
4.1类成员的访问:
私有成员只能在类的私有函数成员内访问,(这里并没有规定是哪种权限的成员),类的对象不能再类的外部访问私有成员;
保护成员只能在类的私有函数成员内访问,(这里并没有规定是哪种权限的成员),类的对象不能再类的外部访问私有成员;
公有成员能在类的私有函数成员内访问,类的对象也能在类的外部访问私有成员。
与struct的区别:struct没有函数成员,并且全为公有权限;
类中的数据成员尽量初始化为私有成员(通过公有函数来来访问)
4.2数据成员的初始化:
通过类内的公有函数来进行初始化:如下例:
#include<iostream>
class Rec
{
private:
int longs;
int height;
public:
int area(int a,int b)
{
longs = a;
height = b;
return longs*height;
} };
using namespace std;
int main()
{
Rec rec1;
int sum;
sum = rec1.area(,);
cout<<"area = "<<sum<<"\n";
}
c++类的基础的更多相关文章
- TypeScript完全解读(26课时)_7.ES6精讲 - 类Class基础
ES6精讲 - 类Class基础 es5中创建构造函数和实例 原来在es5中的写法 定义好Point后,在原型对象上定义getPostion的方法 实例自身是没有这个方法的,我们调用的时候会去创建他的 ...
- 图解Python 【第五篇】:面向对象-类-初级基础篇
由于类的内容比较多,分为类-初级基础篇和类-进阶篇 类的内容总览图: 本节主要讲基础和面向对象的特性 本节内容一览图: 前言总结介绍: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 ...
- 同步类的基础AbstractQueuedSynchronizer(AQS)
同步类的基础AbstractQueuedSynchronizer(AQS) 我们之前介绍了很多同步类,比如ReentrantLock,Semaphore, CountDownLatch, Reentr ...
- C++ —— 类的基础
C++类的设计与基础 2015.9.11 1.变量和常量的命名:确定程序中的变量.常量.函数的名字都是具有描述性的名字,具有直接的意义.如numberOfStudent 比 numOfSt ...
- 看懂类图——UML类图基础
类图 要学懂设计模式,就需要先看得懂类图,类与类之间的关系是学习设计模式的基础,而在软件工程中,类与类之间的关系是通过UML中的类图来体现. 这篇笔记包含的不会是类图的所有东西,包含的只是各个类之间的 ...
- 设计模式-UML类图基础
设计模式之序-UML类图那点事儿 打14年年底就像写那么一个系列,用于讲设计模式的,代码基于JAVA语言,最早接触设计模式是大一还是大二来着,那时候网上有人给推荐书,其中就有设计模式,当时给我推荐的书 ...
- 开发工具、Object类(java基础知识十一)
1.常见开发工具介绍 * A:操作系统自带的记事本软件 * B:高级记事本软件 * C:集成开发环境 IDE * (Integrated Development Environment) * ...
- 构造方法,重载,static,math类(java基础知识七)
1.构造方法概述和格式 * A:构造方法概述和作用 * 给对象的数据(属性)进行初始化 * B:构造方法格式特点 * a:方法名与类名相同(大小也要与类名一致) * b:没有返 ...
- (转)看懂类图——UML类图基础
类图 要学懂设计模式,就需要先看得懂类图,类与类之间的关系是学习设计模式的基础,而在软件工程中,类与类之间的关系是通过UML中的类图来体现. 这篇笔记包含的不会是类图的所有东西,包含的只是各个类之间的 ...
- UML类图基础说明
UML类图主要由类和关系组成. 类: 什么具有相同特征的对象的抽象, 具体我也记不住, 反正有官方定义 关系: 指各个类之间的关系 类图 类就使用一个方框来表示, 把方框分成几层, 来表示不同的信息, ...
随机推荐
- 云计算之路-阿里云上:节点 CPU 波动引发 docker swarm 集群故障
非常抱歉,今天 10:05-10:20 左右,我们用阿里云服务器搭建的 docker swarm 集群又出现故障,又是因为突然的节点 CPU 波动. 受这次故障影响的站点有 闪存,博问,班级,园子,短 ...
- 解决无限 This file is indented with tabs instead of 4 spaces
File -> Settings -> Editor -> Code Style -> Java -> Tabs and Indents -> Use tab ch ...
- arclistsg文档独立模型标签
[标签名称] arclistsg [标签简介] 单表独立模型的文档列表调用标记 [功能说明] 用于调用单表模型的内容,在V5.3系统以上版本中加入了单表模型的概念,脱离了以前的主从表的数据表关联结构, ...
- sqlite3使用事务处理[zz]
<!-- /* Font Definitions */ @font-face {font-family:宋体; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-al ...
- 关于Spring的69个面试题
这篇文章总结了一些关于Spring框架的重要问题,这些问题都是你在面试或笔试过程中可能会被问到的.下次你再也不用担心你的面试了,Java Code Geeks这就帮你解答. 大多数你可能被问到的问题都 ...
- servlet入门学习之工作原理解析
从 Servlet 容器说起 要介绍 Servlet 必须要先把 Servlet 容器说清楚,Servlet 与 Servlet 容器的关系有点像枪和子弹的关系,枪是为子弹而生,而子弹又让枪有了杀伤力 ...
- vue.js中的各种问题记录(包括环境问题和学习笔记)
一.this relative module was not found: 问题的意思是这个模块找不到了 解决方法: 1)查看你入口文件的路径是否写错: 2)查看360杀毒是否拦截了你的文件. 二.v ...
- strman--java8字符串工具类
strman-java 是Java8的字符串处理库,它的灵感来自 dleitee/strman . Strmen-java 是一个字符串处理工具,你可以通过 maven 将它引入到项目中.除了 Jav ...
- 详细介绍关联规则Apriori算法及实现
看了很多博客,关于关联规则的介绍想做一个详细的汇总: 一.概念 ...
- python3 第五章 - 什么是变量、运算符、表达式
在读这一章时,运算符的内容比较多,不要去死记.现在记不住也没有关系,现在只要有这个印象.在后面的学习中,会慢慢加深理解,在理解中去记就容易得多了 1.变量 什么是变量?通俗的讲,就是存储在内存中可以变 ...