-
typename与class可以混用查看全部
-
多变量模板查看全部
-
变量作为模板参数查看全部
-
模板函数使用时才会产生代码数据查看全部
-
使用方法查看全部
-
直接访问传入引用或指针比传入对象更高效查看全部
-
#include <iostream> using namespace std; /** * 定义Coordinate类 * 友元函数:display * 数据成员:m_iX、m_iY */ class Coordinate { // 友元函数 friend void display(Coordinate &coor); public: Coordinate(int x, int y) { m_iX = x; m_iY = y; } public: int m_iX; int m_iY; }; /** * display函数用于显示m_iX、m_iY的值 */ void display(Coordinate &coor) { cout << "m_iX:" << coor.m_iX << endl; cout << "m_iY:" << coor.m_iY << endl; } int main(void) { // 实例化Coordinate对象 Coordinate coor(1,12); // 调用display函数 display(t); return 0; }查看全部
-
静态成员的初始化是在构造函数外边的查看全部
-
注意事项查看全部
-
非静态函数 加载的时候会自动的产生一个 (类名 *this) 所以 this->非静态成员就可以访问了。但是如果是静态函数就没有自动生成 (类名 *this)所以这个时候 就没法访问静态成员所以静态函数里面不能放非静态成员查看全部
-
静态函数不能调用非静态成员 因为静态函数是随着类的加载而加载但是 非静态成员是随着对象的产生而产生查看全部
-
#include<iostream> #include<stdlib.h> #include<vector> #include<list> #include<map> #include<string> using namespace std; int main(void) { list<int>list1; list1.push_back (4); list1.push_back (7); list1.push_back (10); //必须使用迭代器遍历 list<int>::iterator itor=list1.begin (); for(;itor!=list1.end ();itor++) { cout<< *itor<<endl; } map<int,string> m; pair<int,string> p1(3,"hello"); pair<int,string> p2(6,"world"); pair<int,string> p3(8,"beijing"); //映射中没有push_back(),要用insert()插入 m.insert (p1); m.insert (p2); m.insert (p3); //遍历必须使用迭代器,也可以通过索引访问 //cout<<m[3]<<endl; //cout<<m[6]<<endl; map<int,string>::iterator itor=m.begin (); for(;itor!=m.end ();itor++) { cout<< itor->first <<endl;//输出key cout<< itor->second <<endl;//输出value cout<<endl; } return 0; }查看全部
-
//向量vector #include<iostream> #include<stdlib.h> #include<vector> #include<list> #include<map> using namespace std; int main(void) { vector<int> vec; vec.push_back (3); vec.push_back (4); vec.push_back (6); // vec.pop_back (); // cout<<vec.size ()<<endl; /*for(int i=0;i<vec.size ();i++) { cout<<vec[i]<<endl; }*/ vector<int>::iterator itor=vec.begin (); // cout<< *itor<<endl; for(;itor!=vec.end ();itor++) { cout<< *itor<<endl; } cout<<vec.front ()<<endl; cout<<vec.back ()<<endl; return 0; }查看全部
-
映射使用方法 例1: map<int,string>m;//通过映射定义映射对象m,需要在对象中放若干对key键,value值 pair<int,string> p1(10,"shanghai");//通过pair定义若干对key(前面的值10),value(后面的值“shanghai”) pair<int,string> p2(20,"beijing"); m.insert(p1);//用对象m调用insert,分别将p1这一对和p2这一对放到映射中 m.insert(p2); cout<< m[10]<<endl;//如果想要访问上海就通过cout打印m[10]相似数组 cout<< m[20]<<endl; 例2: 键不再是int 而是string m["字符串"]通过键(字符串)访问值(字符串)查看全部
-
map:映射 存储数据成对出现 通过键找到值查看全部
举报
0/150
提交
取消