类和对象(12)—— this指针】的更多相关文章

先查看一段OC源码,关于类的定义: /// An opaque type that represents an Objective-C class. typedef struct objc_class *Class; 类的定义: struct objc_class { Class isa OBJC_ISA_AVAILABILITY; #if !__OBJC2__ Class super_class OBJC2_UNAVAILABLE; const char *name OBJC2_UNAVAIL…
构造一辆汽车,油箱容量100L,当前里程数0,当前油量0,可以根据道路状况确定油耗,根据行驶速度与行驶时间, 输出当前油量与总里程数. public class Car_1 { // 车牌 private String CheP; // 邮箱容量 单位:L private double YouXRL = 100; // 总里程数 单位:km private double LiC = 0; // 油耗 private double YouH = 10; // 当前油量 单位:L private d…
第三周:类和对象提高 this指针 作用 this指针作用就是指向成员函数所作用的对象. 非静态成员函数中可以直接使用this来代表指向该函数作用的指针. 成员函数中默认有一个this指针指向当前对象,所以成员函数的真实参数个数需要+1. 注意 静态成员函数中不能使用this指正! 因为静态成员函数并不具体作用与某个对象! 因此,静态成员函数的真实的参数的个数,就是程序中写出的参数个数! 静态成员变量和静态成员函数 基本概念 静态成员:在说明前面加了static关键字的成员 普通成员变量每个 对…
一.类和对象.this指针 OOP语言的四大特征是什么? 抽象 封装.隐藏 继承 多态 类体内实现的方法会自动处理为inline函数. 类对象的内存大小之和成员变量有关 类在内存上需要对齐,是为了减轻cup在内存上的io次数 查看类对象的大小的指令:cl className.cpp /d1reportSingleClassLayout类名 一个类可以定义无数个对象,每个对象都有自己的成员变量,但是他们共享一套成员方法. 有一个问题:Q1:类中的成员方法是怎么知道要处理哪个对象的信息的? A1:在…
参考:http://blog.163.com/liang_liu99/blog/static/88415216200952123412180/ 以下的介绍主要针对的是Delphi的面向对象的知识,可能和C++.Java.PHP……其他面向对象的编程语言有一些出入 一.介绍几个概念 说到类和对象,我们不能不提及这样几个概念:类.对象.实例.谈谈“我”的简单理解 对象指的是泛称,自然界的任何实体都可以看成是一个对象 类是以这些对象某些特征而分成的一系列的种类 实例则是特质属于某一个类的一个对象 例子…
以上内容来自:http://wenku.baidu.com/link?url=haeRBhswlEcqddk48uW8YVMsdFNWsllimn_dzUYchb6G9NdT4pqgluCpnLQIdWkLSAtG5MFlt8DAkO1Vf12YVyw85A2AaBR9OPbdv6ddgju 感觉写的不错,复制过来: 类的指针:他是一个内存地址值,他指向内存中存放的类对象(包括一些成员变量所赋的值).    对象,他是利用类的构造函数在内存中分配一块内存(包括一些成员变量所赋的值). 在应用时:…
基类声明的指针变量和引用类型变量可以指向派生类的对象,而反过来派生类的指针却不能指向基类变量. 这与基类和派生类之间,被允许的赋值方向是相反的. 但是从逻辑上很容易推敲其合理性.…
一.目录 1.对象的相关知识 2.类的定义 3.类的实例化 4.类对象模型 5.模拟实现offsetof宏 6.this指针 二.正文 1.对象的相关知识 C语言是面向过程的,关注的是过程,分析求解问题的步骤,通过函数调用逐步解决问题. C++是面向对象的,关注的是对象,将一件事拆分成不同的对象,靠对象之间的交互完成. 对象:任何一个对象都应该具有两个要素,即属性和行为,对象是由一组属性和行为构成的.如现实生活中的手机就是一个对象,它的属性就是生产厂家,配置,颜色等等,行为就是它的功能.在一个系…
C++中共有四种存储类别标识符:auto/static/register/extern 1.auto 函数或分程序内定义的变量(包括形参)可以定义为auto(自动变量).如果不指定存储类别,则隐式定义为auto. 例如,函数类有如下定义: auto int x , y ; 等价于: int x , y ; 2.static 除了形参,可以将局部变量和全局变量定义为静态变量.用static标识符. static int a;//a是全局静态变量 f() {static int b = 1;}//b…
成员变量和成员函数分开存储: 在C++中,类内的成员变量和成员函数分开存储 第一点:空对象占用内存空间1个字节 第二点:只有非静态成员变量才属于类的对象上,非静态成员函数和静态成员函数和静态成员变量不属于类的对象上 示例代码如下:结果为4个字节 #include<iostream> #include<string> using namespace std; class Person { // 空对象占一个字节 public: int m_a; // 非静态成员变量 属于类的对象 打…