热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

《EssentialC++》是本粗略的书。不过很实用

用C++,有的概念不常用,有时候用的时候就忘记了。查阅大部头的书比较麻烦。用EssentialC++最好了。手边常备EssentialC++。很不错。构造析构:析构函数无返回值

用C++,有的概念不常用,有时候用的时候就忘记了。查阅大部头的书比较麻烦。用Essential C++最好了。

手边常备Essential C++。很不错。

构造 析构:
析构函数无返回值,无参数。析构函数很多时候不用。用的情况一般是构造函数用 NEW 申请了堆空间。

若果有必要设计拷贝构造函数,那么也一定有必要设计 copy assignment operator.一般有指针成员变量的话,需要设计拷贝构造函数。默认的拷贝构造不好用。

this 指针:

 class demo
{
public:
     int fundemo(int a,int b) {value1 = a,value2 = b}; // <=> int fundemo(int a,int b,demo * this){this.value1 = a,this.value2 = b}; 
private:
     int value1;
     int value2;
};

  

static:

static member function    类外定义的时候不需要 STATIC 关键字

static  member data  类内相当于声明,类外需要定义和初始化:int A::demostatic = 5;

class intBuffer {
public:
	// ...
private:
	//static  const int _buf_size = 1024; // ok but not with VC++
	enum { _buf_size = 1024 };
    int _buffer[ _buf_size ];             // ok
};

运算符重载:

member operator             this指针隐含代表左侧操作数。

non -member operator    多以个参数。

嵌套型别: typedef 这里就是这只别名。typedef  Triangular_iterator  iterator;

友元: friend 声明可以出现在类的任何位置,不受public 和private 的限制。使用是为了效率。可以不用。

实现一个 copy assignment opterator:

matrix& matrix::operator=(const matrix& rhs)

{

       if(*this != rhs)

        {

                    _roh = rhs._roh;

                    delete [] _pmat;

                     _pmat = new double[elem_cnt];

        }

        return  *this;

}

function object:    -----------提供有function call 运算符的 class

 

class LessThan {
public:
   LessThan( int val ) : _val( val ){}
   int  comp_val() const    { return _val; }
   void comp_val( int nval ){ _val = nval; }

	bool operator()( int value ) const;

private:
   int _val;
};

inline bool 
LessThan::operator()( int value ) const 
      { return value <_val; }


 

将 iostream运算符重载

<<这个运算符必须是 non-member function。

>> 这个运算符需要考虑输入问题,难设计。

指向member   function 的指针

与指向 non-member function 的指针有些不同,必须要指出他是指向那个class 的。

这个比较陌生。  ->*   .*  这里会这么用。


推荐阅读
author-avatar
mobiledu2502889953
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有