自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 资源 (1)
  • 收藏
  • 关注

原创 C++的拷贝构造函数

1•  类会提供默认的拷贝构造函数           –默认的拷贝构造函数会完成所有成员的逐个复制2•  拷贝构造的调用时机:           –函数值传递时           –函数返回时           –用同类型的对象初始时3•  何时需要自定义拷贝构造函数?           –类中有指针(或引用 )成员时           –希望自定义对象

2015-01-26 18:01:57 628

原创 C++何时需要自定义析构函数呢?

对象销毁时  如果我们自己没有写析构方法,编译器会帮我们写一个然后调用。那么问题来了,既然我不写,编译器会帮我写,那我干嘛要写???有木有什么情况必须我自己写的????处理内存的时候,也就是把之前retain的对象都release一次#include using namespace std;//日期类class Date{ int year,mont

2015-01-24 17:51:42 9548 2

原创 C++的析构函数

1•  与类名同,但名称前有一个波浪号~2•  一个类只有一个析构3•  析构没有参数,没有返回值4•  在一个对象释放前调用。释放可能是主动的,也可能是被动的。5•  一个对象的析构函数只调用一次,但语法上允许多次调用6•  默认析构函数     何时需要自定义析构呢?//// main.cpp// 析构函数//// Created by 06

2015-01-24 17:01:09 583

原创 C++中const对象和const成员函数

1•  成员函数可以声明成const函数(声明后加const)2•  对于const对象,只能调用const成员函数3•  Const函数和非const函数可以形成重载4•  对于非const对象的函数调用优先选择非const成员函数5•  对于类中的mutable数据成员,可以被const成员函数修改//// main.cpp// Const//

2015-01-24 16:29:26 940

原创 C++中的简单内存管理---初步认识

OC里面给变量赋值有2种方法第一种是直接用下划线的,也就是实例变量:_button=       第二种是使用属性:self.button = ....这两种有何区别???以下项目是创建了一个C++项目   简单模拟创建对象和给变量赋值的情况首先创建了一个NSObject类,在OC里面继承NSObject类的都有retain  release  autorelease。。。。等方法来管

2015-01-24 14:11:40 677

原创 C++ 成员变量是别的类的对象

•在成员函数中,可以将this指针当参数传递,也可以返回this指针,或返回通过this指针拿到的对象/* 成员变量是别的类的对象 */#include using namespace std;//日期类class Date { int year,month,day;public: //构造方法 Date(){ cout <<

2015-01-23 18:36:56 3268 1

原创 C++的this指针

1. 一个对象占多大空间呢?             是由对象里面的成员变量决定的。  2.成员函数保存在哪儿?          不在对象的内存里面,它在代码区。所有函数写完都在代码区,只有在调用的时候才去代码区找。既然函数不在对象里,那么函数里面的那个this指针代表当前对象是怎么回事??? 3.调用成员函数时,会自动传this指针 4. this指针是指向当前

2015-01-23 18:30:43 563

原创 C++的类

创建C++的类主要有两个文件:.cpp和.h结尾的两个文件。   .h结尾的是头文件,对外公开的接口。c.pp是具体的实现。也就是说变量和函数的声明或者类的声明都写在.h头文件中。•用class定义类       成员默认为私有•类中成员的作用域      private      protected      public以下是简单

2015-01-19 19:04:12 677

原创 C++中的构造函数与创建对象的(简单)过程

•构造函数     –和类名相同     –没有返回值类型     –只在建立对象的时候被自动调用一次     –调用构造函数的主要目的是初始化对象•一个对象的创建过程:     –分配内存空间     –初始化成员变量,如果成员是对象,构造他     –调用构造函数•默认的空参构造函数构造函数的使用•构造函数重载

2015-01-19 15:22:59 7155 2

原创 C++类的基本认识

面向对象编程:•万物皆对象•程序就是一组对象,对象之间通过发送消息互相通知做什么•每一个对象都有它自己的由其他对象构成的存储区•每一个对象有一个类型•一个特定类型的所有对象都能接收相同的消息类:•类是用户定义的数据类型•在类中声明的变量和函数称为类的成员     变量称为数据成员(也叫成员变量)     函数称为成员函数(有时称为

2015-01-18 12:08:20 691

原创 成员函数指针的应用 之 仿写OC里面UIButton的回调机制(三)

//// main.cpp// Basic//// Created by 06 on 15/1/9.// Copyright (c) 2015年 黄永锐. All rights reserved.//#include using namespace std;class UIButton;//struct NSObject{//负责内存管理的类 bool

2015-01-17 15:01:39 581

原创 成员函数指针的应用 之 仿写OC里面UIButton的回调机制(二)

//// main.cpp// Basic//// Created by 06 on 15/1/9.// Copyright (c) 2015年 黄永锐. All rights reserved.//#include using namespace std;//struct NSObject{//负责内存管理的类 bool init(){

2015-01-17 15:00:32 446

原创 成员函数指针的应用 之 仿写OC里面UIButton的回调机制(一)

//// main.cpp// Basic//// Created by 06 on 15/1/9.// Copyright (c) 2015年 黄永锐. All rights reserved.//#include using namespace std;//struct NSObject{//负责内存管理的类 bool init(){

2015-01-17 14:59:15 700

原创 C++中的引用类型

•引用是另外一个变量的别名•引用的声明        int iVal;        int & iRef = iVal;•引用必须初始化,且必须用变量初始化。        不能写:int& a = 10        可以写成const int& a = 10;//常量引用•不可能有空引用,必须确保引用和一块合法的存储单元关联•当一个引用被初始化为指向一个

2015-01-12 16:23:41 608

原创 C++的初步了解内存

一•  new/delete       int* p2 = new int;//不保证是零       int* p3 = new int(100);       int* p4 = new int[5];       delete p2;       delete p3;       delete[] p4;二• 定位分配      char buf[100

2015-01-12 15:52:56 450

原创 C++中的内联函数

一• 宏在C++中不提倡使用1. 宏存在着一些潜在的危险2. C++中的面向对象不允许预处理器访问类的成员数据。也意味着宏函数不能用作类的成员函数。二• 内联函数保持了函数的所有特点,但在需要的地方会像宏一样展开,不需要调用函数的开销。三• 类中直接定义的函数自动被处理成内联函数,所以一般把内联函数放在头文件中。四• inline是一种请求,实现方式取决于编译器,特别是当函

2015-01-12 13:54:16 501

原创 C++的参数默认值和哑元

一. 函数的参数支持哑元            哑元是一种没有参数名的参数,主要是为了函数间的区别以及向前兼容二. 函数的参数可以指定默认值,当调用时没有传参,就以默认值进行函数调用。三. 有默认值的形参必须靠右,声明和定义分开时,默认值必需在声明中指定,定义中不再指定。//默认参数 与 哑元#include using namespace std;/*

2015-01-12 13:50:17 2493

原创 C++中的函数重载

一. 函数的参数表严格匹配,空参代表没有任何参数,void形参依然可以使用二. 不再支持C语言中的隐式声明方式,函数调用前必需先声明或定义三. 函数的返回类型int不能省略四. 函数可以重载     1. 在同一作用域中,函数名相同,参数列表不同的函数可以存在若干个,其返回值任意     2. 当出现重载函数时,使用函数指针显得有点问题,当给函数指针赋值时,指针的类型代表着具体

2015-01-11 16:02:01 763

原创 C++中的运算符转换

1. C++中的运算符,可以用其他关键字转换x>0 && y>0 可以写成x>0 and y>02. 下图为可以转换的列表

2015-01-10 17:00:08 487

原创 C++的布尔类型bool

1.c99的bool是一种宏定义,而在c++中则是专门的一种数据类型bool2.bool的值一般为true(逻辑真)和false(逻辑假)3.和c一样,bool值本质上也是整数,true等于1,false等于0  isLeap = true;  int days = 28 + isLeap;//2月份的天数4.另外,可以将任何值赋值给bool类型的变

2015-01-10 16:55:00 1268

原创 C++枚举的使用 C99与C11的枚举

#include using namespace std;//结构体 按钮struct UIButton{ int tag; void touch(){ cout << "tag值为 " << tag << " 的Button被点击了" << endl; }};//枚举 按钮的状态enum ButtonType{ UP

2015-01-10 16:15:16 1479

原创 C++中枚举的简单使用

•C++的枚举不再是普通的整数类型,而是一种独立的类型,这个体现了C++强类型的特征// 枚举#include using namespace std;////英雄的状态enum HeroState { Stand, Move, Attack, Die};//匿名枚举enum { INDEX, INDEX2

2015-01-10 16:13:02 2015

原创 C++中的联合

联合中所有变量 共享同一块内存地址//联合union MyUnion {    int x;    int y;    char cs[4];};•C++的匿名联合union{int x;char c[4];};x = 100;#include using namespace std;#pragm

2015-01-10 16:08:48 528

原创 C++中的结构体

•C++的结构中可以有函数,称为成员函数结构中的变量叫做成员变量。#include using namespace std;//C++中,结构体就是类。struct Date { int year; //成员变量 实例变量 int month; int day; void show(){ cout << y

2015-01-10 16:00:03 880

原创 C++命名空间

一. 命名空间也称名字空间,即namespace            1.名字空间是一种描述逻辑分组的机制,如果一些声明按照某种准则在逻辑上属于同一集团,就可以将它们放入同一个名字空间,以表明这个事实。            2.防止命名冲突也是一个很重要的原因。一个人写的程序放到一个名字空间中也是一种可取的做法。二.使用某个名字空间下的对象或函数:           

2015-01-10 15:52:05 1418

原创 C++第一个程序-include使用尖括号和双引号的场景

注意哦   输入输出   C++中的include C++里面自己的内容的时候使用 不加.h   如果include我们自己写的类的时候 ,使用双引号 "" 加.h//// main.cpp// HYR_hello//// Created by 06 on 15/1/8.// Copyright (c) 2015年 黄永锐. All rights rese

2015-01-10 15:44:44 767

原创 C++成员函数指针与其应用场景

//成员函数指针#include using namespace std;//全局函数void test (){ cout << "this is test" << endl;}void test2 (int a){ cout << "this is test22222" << endl;}//结构体struct Date{ int year;

2015-01-10 15:26:02 885

原创 C++成员变量指针的用途(使用场景)

#pragma 成员指针的使用场景#include using namespace std;//结构体struct Date { int year; int month; int day; void show(){ cout << year << ' ' << month << ' ' << day << endl; }};

2015-01-10 11:42:48 1032

原创 C++成员指针

1.成员指针是一种相对地址2.结构体中或者类中的成员(变量或者函数)的相对地址的获取方式  &结构类型名::成员3.声明成员指针变量         成员类型 结构类型名::*指针变量名4.通过成员指针访问结构成员          结构变量*指针变量名//我们要声明 指针 指向成员变量,成员变量的地址会一样么?成员变量的地址是由结构体对象决定的

2015-01-10 11:10:00 586

原创 C++用const 保护 引用参数的传递

尽量使用引用传递参数 尽量使用引用代替指针#include using namespace std;//void fa(int& r){ r++; cout << r << endl;}//这个方法里 永远都不会改变r 所以这样的情况就要用到const来修饰void fb(const int& r){ // r++;//这样就不支持了

2015-01-10 09:58:24 738

原创 C++引用作为返回值

#pragma 引用作为返回值#include using namespace std;//返回值类型是引用 相当于创建一个匿名的临时变量int& fa(int& r){ r++; return r;}int& fb();//函数声明//主函数int main (){ int x = 100; // fa(x); // cout <

2015-01-10 09:55:40 1077

原创 C++值传递和引用传递.地址传递

//// main.cpp// Basic//// Created by 06 on 15/1/9.// Copyright (c) 2015年 黄永锐. All rights reserved.//#include using namespace std;//引用传递void fa(int &r){ r++; //shuchu dizi

2015-01-10 09:48:18 1015

原创 C++ 引用类型作为函数的形参 (不用第三个数交换两个数)

不用第三个数交换两个数#pragma 引用类型作为函数的形参#include using namespace std;//函数声明void swap1(int &x,int &y);void swap2(int &x,int &y);void swap3(int* x,int* y);//主函数int main(){ // int a = 5

2015-01-10 09:46:22 2406

原创 C++中提供的类型转换方式

C++中提供了以下几种类型转换运算符•static_cast()–转换时做静态检查,即在编译时进行–void*到其他指针的转换•reinterprect_cast()–允许强转任何类型的指针–把整数强转成指针,指针强转成整数•const_cast()–去掉cv限制•dynamic_case()  –动态转换

2015-01-10 09:35:49 553

Swift Programming Language中文版,英文版

Swift Programming Language中文版,英文版

2015-01-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除