C++类与细节
来源:互联网 发布:太极服装淘宝 编辑:程序博客网 时间:2024/05/01 13:16
读书笔记 增加中
1.vector 和string
C++标准定义了两个类vector和string,vector和string类将数组和字符串作为基本类来处理,vector有确定的大小,两个string对象可以用==和<等进行比较,两者都可以用=进行复制。
例子:使用vector类存储100个平方值并将基输出
#include <iostream>#include <vector>using namespace std;int main( ){ vector<int> squares( 100 ); for( int i = 0; i < squares.size( ); i++ ) squares[ i ] = i * i; for( int i = 0; i < squares.size( ); i++ ) cout << i << " " << squares[ i ] << endl; return 0;}
2.指针
动态对象创建
IntCell *m;
m=new IntCell;
能用自动变量 时候就不用new,当通过new分配地址的对象不再引用时, 就需要使用delete操作将其删除。指引的赋值和比较
如果lhs和rhs是指针变量,那么,lhs=rhs使lhs指向rhs所指向的同一个对象。三种传递参数方法
double avg(const vector &arr,int n,bool &errorflag);
arr是vector类型,使用按常量引用调用来传递;
按值调用来传递;
引用地址调用。3.模板
常见函数模板与类模板4.使用矩阵
C++使用矩阵 基本思想是使用向量的向量,需要附加的操作符重载的知识。
代码:一个完整的matrix类
#ifndef MATRIX_H#define MATRIX_H#include <vector>using namespace std;template <typename Object>class matrix{ public: matrix( int rows, int cols ) : array( rows ) { for( int i = 0; i < rows; i++ ) array[ i ].resize( cols ); } const vector<Object> & operator[]( int row ) const//访问函数 { return array[ row ]; } vector<Object> & operator[]( int row )//修改函数 { return array[ row ]; } int numrows( ) const { return array.size( ); } int numcols( ) const { return numrows( ) ? array[ 0 ].size( ) : 0; } private: vector< vector<Object> > array;};#endif
0 0
- C++类与细节
- C++与C语言细节差异分析
- C++与C语言细节差异分析
- C++与C语言细节差异分析
- C++与C语言细节差异分析
- C与C++的细节(1)
- Objective-C - 封装的本质与细节
- C++与C语言细节差异分析
- C语言细节之定义与声明
- C与C++的常错小细节
- C细节
- c细节
- c细节
- C#string类的一点小细节
- C#与C++/CLI的交互的一个细节
- C /C++ 小细节: float x 与零值比较
- java学习细节(与C/C++对比):(一)
- java学习细节(与C/C++对比):(二)
- django中运行连接mysql(使用pymysql代替MySQL_db)
- Problem B: 调整表中元素顺序(线性表)
- ReactiveCocoa 函数响应式编程简介 链式编程 函数式编程 响应式编程
- Android消息机制中Handler切换线程的思考
- POJ1611 The Suspects(并查集)
- C++类与细节
- 唯爱小粽子:软件构建的重要性
- Centos 6.5下安装图形界面
- Offer题6 根据前序和中序构建二叉树
- 用链表来实现栈
- "=="和equals方法究竟有什么区别?
- java中的循环,一个猜数program
- 程序员应该常去的网站(转载)
- 旧系统升级改造那些二三事之步骤流程