这个星期在学C++
2010-04-23 21:21
155 查看
用的是http://www.d2school.com/第二学堂的教材。
贴一小段代码,用来帮助自己记忆所学。
贴一小段代码,用来帮助自己记忆所学。
#include <iostream> #include <vector> #include <stdlib.h> #include <list> using namespace std; struct person { public: void setname(string const sname) { name = sname; } void setage(int const sage) { age = sage; } string getname() { return name; } int getage() { return age; } virtual void savehello() { cout << "Hello,My name is "<<name<<endl; } protected: private: string name; int age; }; struct man: public person { man() { gender = "男"; } public: void setsex(string const sgender) { gender = sgender; } string getsex() { return gender; } virtual void savehello() { string myname; myname = getname(); cout <<"你好,我是"<<myname<<",很高兴认识你!/n"; } protected: private: string gender; }; int main() { string name,gender; int age,i,s; //枚举 enum {sa_in = 1,sa_ou,sa_go}; cout <<"枚举:"<<sa_ou<<","<<sa_go<<endl; man hu,wen,li,wu; //列表 list<int> lst; lst.push_front(10); lst.push_front(20); lst.push_back(8); lst.push_back(9); //列表--非迭代器函数 s = lst.size(); cout <<"列表size:"<<s<<endl; lst.pop_front(); lst.pop_back(); cout <<"列表第一项:"<<lst.front()<<endl; cout <<"列表最后项:"<<lst.back()<<endl; s = lst.size(); cout <<"列表size:"<<s<<endl; lst.clear(); //列表--迭代器函数 lst.push_front(15); lst.push_front(20); lst.push_back(5); lst.push_back(10); list<int>::iterator iter = lst.begin(); list<int>::reverse_iterator iter2 = lst.rbegin(); i = *iter; cout <<"列表开始项:"<<i<<endl; i = *iter2; cout <<"列表最后项:"<<i<<endl; ++iter; lst.insert(iter,1);//插入后列表是:20,1,15,5,10 cout <<"列表插入后:"<<*iter<<endl; lst.erase(iter); cout <<"列表删除后:"<<*iter<<endl; cout <<"列表最后项:"<<*iter2<<endl; //遍历列表 for (list<int>::const_iterator c_iter = lst.begin();c_iter != lst.end();++c_iter) { cout <<*c_iter<<","; } lst.clear(); cout<<"/n"; //向量 vector<man> manyman; manyman.push_back(hu); manyman.push_back(wen); manyman.push_back(li); manyman.push_back(wu); manyman[0].setname("胡涛"); manyman[0].setage(68); manyman[1].setname("温宝"); manyman[1].setage(68); manyman[2].setname("李强"); manyman[2].setage(55); manyman[3].setname("吴国"); manyman[3].setage(69); s = manyman.size(); for (i = 0;i<s;i++) { name = manyman[i].getname(); age = manyman[i].getage(); gender = manyman[i].getsex(); cout <<name<<","<<gender<<","<<age<<"岁。"<<endl; } manyman.clear(); cout <<"/n"; //=============================过去了==========================1 person ahai; ahai.setname("阿海"); ahai.setage(10); name = ahai.getname(); age = ahai.getage(); cout <<name<<endl; cout <<age<<endl; ahai.savehello(); cout <<"/n"; man yanhai; yanhai.setname("欧耶"); yanhai.setage(23); yanhai.setsex("男"); name = yanhai.getname(); age = yanhai.getage(); gender = yanhai.getsex(); cout <<name<<endl; cout <<age<<endl; cout <<gender<<endl; yanhai.savehello(); system("pause"); return 0; }
相关文章推荐
- C++程序的单元测试
- ISO C++ operator 重载类型转换时对指针的重要约束!
- C++中this指针的用法
- C++中数组参数详解
- linux c c++内存检查工具valgrind的使用
- 《C++ Primer Plus》14章编程练习1、2
- c++中的参数传递问题
- jni java调用c++实现的dll
- [C++] const int *a, int const *a,int * const a,区别,指针数组
- 【cocos2d-x从c++到js】05:John Resiq的继承写法解析
- 完全二叉搜索树结构的C++实现
- QML和c++(Qt)相互传值
- 使用C++实现二叉堆
- c++学习笔记之封装篇(上)
- C++学习(42)
- [C++] boost::function boost::bind 与 回调
- C++获得当前执行代码在源文件的文件名
- 1007. 素数对猜想 (20) c++
- C\C++拾遗------C#程序员重温C\C++之要点
- C和C++混合编译,extern"C"的用法