-
友元类
友元函数:友元全局函数,友元成员函数
友元成员函数:(声明为其他类的成员函数)
用关键字 friend 接友元函数,传入当前当前类的对象引用或指针,能够访问到私有成员,或保护成员
查看全部 -
静态数据成员与函数的注意事项:
静态数据成员须单独初始化;
静态成员函数不能调用非静态成员函数和非静态数据成员;
静态数据成员只有一份且不依赖对象而存在
查看全部 -
m_pArr= new T[KSize];
查看全部 -
vector<T> v1; vector保存类型为T的对象,默认构造函数v1为空
vector<T> v2(v1); v2是v1的一个副本
vector<T> v3(n,1); v3包含n个值为i的元素
vector<T> v4(n); v4包含有初始化元素的n个副本
查看全部 -
向量常用函数
查看全部 -
基类的友元函数仍然是派生类的友元函数
查看全部 -
#include <iostream>
using namespace std;
class B;
class A
{
int a;
public:
A(int x=0) { a=x; }
friend class B;
};
class B
{
int b;
public:
void fun(A& ob){ cout << ob.a << endl;}
};
class C:public B
{
public:
//void fun2(A& ob){ cout <<ob.a <<endl;} //派生类新加的函数却不能访问A,此句会报错
};
void main()
{
A a(55);
C c;
c.fun(a); //C是B的派生类 通过基类B的函数fun仍然可以访问
}
查看全部 -
C++ Primer中有如下描述:友元关系不能被继承,基类的友元对派生类没有特殊的访问权限。
然而通过实践发现,VS编译器并没有安装上述描述来处理,下面的规则与上述描述相悖,却符合VS编译器的处理规则。
查看全部 -
map插入没有push_back 方法,用insert方法进行插入
可用键索引,也用用迭代器,迭代器指针指向一个元素为键,第二个为值
注:迭代器变最好不要为关键字itor!!!
查看全部 -
list 不能用for循环l[i]来迭代,只能用迭代器的方法
查看全部 -
vector代码实现
查看全部 -
映射使用方法
map定义映射
pair定义键值对,键可以是字符串,数组中不能为字符串
插入,访问
查看全部 -
映射。。。。
查看全部 -
链表。。。。
第一个节点为头结点
数据域:存储值
指针:把个节点串起来
单链表
双链表
数据插入速度快,链表和数组使用方法相同
查看全部 -
向量的迭代器
创建一个向量类型的变量vec
把hello放入向量尾部
声明一个迭代器类的变量并指向向量的第一个元素
遍历迭代器,vec.end()是指向向量的最后一个元素的后面一个位置, citer++指向迭代器的下一个位置
*citer指向迭代器存储的值
查看全部
举报