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++类的基础的更多相关文章

  1. TypeScript完全解读(26课时)_7.ES6精讲 - 类Class基础

    ES6精讲 - 类Class基础 es5中创建构造函数和实例 原来在es5中的写法 定义好Point后,在原型对象上定义getPostion的方法 实例自身是没有这个方法的,我们调用的时候会去创建他的 ...

  2. 图解Python 【第五篇】:面向对象-类-初级基础篇

    由于类的内容比较多,分为类-初级基础篇和类-进阶篇 类的内容总览图: 本节主要讲基础和面向对象的特性 本节内容一览图: 前言总结介绍: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 ...

  3. 同步类的基础AbstractQueuedSynchronizer(AQS)

    同步类的基础AbstractQueuedSynchronizer(AQS) 我们之前介绍了很多同步类,比如ReentrantLock,Semaphore, CountDownLatch, Reentr ...

  4. C++ —— 类的基础

    C++类的设计与基础       2015.9.11 1.变量和常量的命名:确定程序中的变量.常量.函数的名字都是具有描述性的名字,具有直接的意义.如numberOfStudent 比 numOfSt ...

  5. 看懂类图——UML类图基础

    类图 要学懂设计模式,就需要先看得懂类图,类与类之间的关系是学习设计模式的基础,而在软件工程中,类与类之间的关系是通过UML中的类图来体现. 这篇笔记包含的不会是类图的所有东西,包含的只是各个类之间的 ...

  6. 设计模式-UML类图基础

    设计模式之序-UML类图那点事儿 打14年年底就像写那么一个系列,用于讲设计模式的,代码基于JAVA语言,最早接触设计模式是大一还是大二来着,那时候网上有人给推荐书,其中就有设计模式,当时给我推荐的书 ...

  7. 开发工具、Object类(java基础知识十一)

    1.常见开发工具介绍 * A:操作系统自带的记事本软件 * B:高级记事本软件 * C:集成开发环境 IDE     * (Integrated Development Environment) *  ...

  8. 构造方法,重载,static,math类(java基础知识七)

    1.构造方法概述和格式 * A:构造方法概述和作用     * 给对象的数据(属性)进行初始化 * B:构造方法格式特点     * a:方法名与类名相同(大小也要与类名一致)     * b:没有返 ...

  9. (转)看懂类图——UML类图基础

    类图 要学懂设计模式,就需要先看得懂类图,类与类之间的关系是学习设计模式的基础,而在软件工程中,类与类之间的关系是通过UML中的类图来体现. 这篇笔记包含的不会是类图的所有东西,包含的只是各个类之间的 ...

  10. UML类图基础说明

    UML类图主要由类和关系组成. 类: 什么具有相同特征的对象的抽象, 具体我也记不住, 反正有官方定义 关系: 指各个类之间的关系 类图 类就使用一个方框来表示, 把方框分成几层, 来表示不同的信息, ...

随机推荐

  1. jQuery中获取文档的高度、可视区域高度以及滚动条距页面顶部的高度

    在写页面的时候,经常会碰到这样的情况,就是要获取文档的高度.可视区域高度或者滚动条距页面顶部的高度等情况. 但我总是有些爱搞混淆了,这里还是简单做个笔记吧,这里只限于使用jQuery来获取. 1.获取 ...

  2. javascript数据类型之Array类型

    Array类型 除了Object之外,Array类型恐怕是ECMAScript中最常用的类型了.而且,ECMAScript中的数组与其他多数语言中的数组有着相当大的区别.虽然ECMAScript数组与 ...

  3. UE4 AsnycTask

    使用AsnycTask可以将制定代码放在指定线程中执行,例如更新文理必须放在游戏线程. AsyncTask(ENamedThreads::GameThread, [=](){      updateT ...

  4. 怎么使用linux命令重启服务器

    一下的命令都可以重启Linux服务器: 1.shutdown -r now 2.reboot 3.startx

  5. Python3 的函数(2)

    1.形参和实参 def MyFun(x): return x ** 3 y = 3 print(MyFun(y)) x为形参,y为实参. 2.函数文档 在函数内用单引号引起来的一段文字,在调用函数时不 ...

  6. 详解javascript中的闭包

    全局变量与局部变量 在说闭包之前先说明全局变量与局部变量 全局变量:变量声明时如果不使用 var 关键字,那么它就是一个全局变量,即便它在函数内定义. 局部变量:使用var关键字定义 全局变量/局部变 ...

  7. Linuxc - define 与 typedef的区别

    预处理就是讲一些头文件展开. 预处理还会将使用到宏定义的值替换为真正的值.宏只是单纯的字符串的替换. #define 宏定义 眼里没有语法,不用分号结尾. typedef 定义别名,是有语法的,要用分 ...

  8. 使用vue 遇到的问题————— 解决手机实时显示项目

    Vue项目文件组织架构: src文件夹存放源代码. Static文件夹存放第三方静态资源.     git将项目上传github  http://blog.csdn.net/laozitianxia/ ...

  9. linux_vi快捷键

    vi有哪些快捷方式? 到行头: 0 ^ home 到行尾: $ shif+a(编辑模式) end 退出保存: wq . x .wq!(强制退出保存) 强制退出不保存: q! 光标移到文件最后一行: s ...

  10. js_6_dom选择

    什么是dom编程? 找 找到html中的标签,赋值给一个变量 改 通过更改这个变量动态地更改html中的内容 返回的内容为列表 如何找到那些标签? id:var find = document.get ...