- 博客(10)
- 收藏
- 关注
转载 vector的用法
在c++中,vector是一个十分有用的容器,下面对这个容器做一下总结。1 基本操作(1)头文件#include.(2)创建vector对象,vector vec;(3)尾部插入数字:vec.push_back(a);(4)使用下标访问元素,cout<<vec[0]<<endl;记住下标是从0开始的。(5)使用迭代器访问元素.vector::iterator it;for(it=vec.begin();it!=vec.end();it++)cout<<*
2021-01-20 15:55:48
850
翻译 this指针
this指针的用途1.当形参和成员变量重名时,可以用this指针来区分。2.在类的非静态成员函数中返回对象本身,可以使用return *this;#include<iostream>using namespace std;class Person{public: Person(int age) { //当形参和成员变量重名时,可以用this指针来区分。 this->age = age; } Person& PersonAddPerson(Perso
2021-01-05 21:28:59
117
转载 静态成员
静态成员,指的是在c++类中声明成员时可以加上static关键字,这样声明的成员就叫做静态成员(包括数据成员和成员函数)。即声明为static的类成员或者成员函数便能在类的范围内同享。class test{public: test(){} ~test(){}public: //静态成员函数 static int getCount() { return m_nCount; } private: //静态数据成员 static int m_nCount;};int test::m
2021-01-05 20:50:15
260
翻译 浅拷贝与深拷贝
浅拷贝:简单的赋值拷贝操作深拷贝:在堆区重新申请空间,进行拷贝操作#include<iostream>using namespace std;class Person{public: Person() { cout << "无参构造调用" << endl; } Person(int age,int height) { m_Age = age; m_Height = new int(height); cout << "有参构
2021-01-05 20:35:53
182
翻译 构造函数与析构函数
构造函数:主要作用用于创建对象对对象的成员进行赋值,构造函数由编译器调用,无需手动调用。析构函数:主要作用在于对象销毁前系统自动调用,执行清理工作。构造函数语法:类名(){}1.构造函数没有返回值,也不写void;2.构造函数名与类名相同;3.构造函数可以有参数,因此可以发生重载;4.程序在调用对象时会自动调用构造函数。析构函数语法:~类名(){}1.析构函数没有返回值,也不写void;2.构造函数名=~类名;3.构造函数没有有参数,因此不可以发生重载;4.程序在对象销毁前自动调用析构
2021-01-03 21:17:16
118
原创 new的使用
1.使用new来分配内存通用格式如下:typeName *point_name = new typeName;也就是为一个数据对象(可以是结构,也可以是基本类型)分配内存。例如:int *pn = new int;//new int 告诉程序,需要一个存储int类型数据的内存,然后找到这样的内存并返回其地址,将地址赋值给pn,pn是被声明指向这个内存的指针。现在pn是地址,*pn是存储在那里的值。将new方法与将变量的地址赋给指针进行比较:int a;int *pt= &a;
2021-01-03 20:03:34
16800
11
原创 引用变量
引用是已定义的变量的别名。int rats;int & rodents = rats;//创建引用变量rats和rodents的值和地址都相同。将rodents加1将影响着两个变量。注意:1.必须在声明引用变量时进行初始化2.一旦初始化后就不可以发生改变了(如,b是a的引用,不能再使b是c的引用)下面的例子是错误的int rat;int & rodent;rodent = rat;//错误,必须在声明引用时将其初始化引用更接近const指针,一旦与某个变量关联起来
2021-01-02 22:07:25
187
原创 函数与数组
关于函数中数组参数的写法例如:int sum(int *arr,int n);int sum(int arr[],int n);//这两个函数头里的*arr与arr[]的含义是相同的。但在其他地方这两个含义是不同的。
2021-01-01 21:34:21
133
原创 值传递、地址传递和引用传递
值传递进行值传递的时候,函数的形参发生改变,并不影响实参。void swap(int x,int y){ int temp; temp=x; x=y; y=temp; cout<<x<<endl; cout<<y<<endl;}void main(){ int a=1; int b=2; swap(a,b); cout<<a<<endl; cout<<b<<endl;}//执
2021-01-01 21:24:27
222
原创 const和指针
const和指针const修饰指针有两种不同的方式。示例如下:一是让指针指向一个常量对象,目的是防止使用该指针来修改指向的值。int a=10;int b=20;const int * p=&a;//该声明的意思是p指向一个const int(这里为10),因此不能使用p来修改这个值,//换句话来说,*p的值为const,不能被修改。*p=20; //错误p=&b; //正确,const只能防止修改p指向的值,但不能防止修改p的值,也就是说,可以将一个新地址赋给p二是
2021-01-01 20:37:36
177
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人