首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

踏进C++程序世界-操作符运算及操作符重载

2013-10-29 
走进C++程序世界------操作符运算及操作符重载重载,在一个类定义中,可以编写几个同名的方法,但是只要它们

走进C++程序世界------操作符运算及操作符重载

重载,在一个类定义中,可以编写几个同名的方法,但是只要它们的签名参数列表不同,Java就会将它们看做唯一的方法。简单的说,一个类中的方法与另一个方法同名,但是参数表不同,这种方法称之为重载方法

下面关于操作符重载的具体实例(单目运算的自增及自减)

/* *auto_ptr.cpp *cDate : 2013-9-28 *Author: sjin *Mail:413977243@qq.com */#include <iostream>#include <memory>using namespace std;/*解除引用运算符*及成员属性运算符-> */class dog{public:    dog(){cout << "dog constructor.."<<endl;}    ~dog() {cout << "dog destructor.."<<endl;}    void Bark(){        cout << " Bark Bark!..."<<endl;    }};int main(){    /*相当于 int *int_ptr = new int;*/    auto_ptr <int> int_ptr(new int);    *int_ptr = 25;    cout << "*int_ptr = " << *int_ptr << endl;    /*相当于 dog * dog_ptr = new dog;*/    auto_ptr <dog> dog_ptr(new dog);    dog_ptr->Bark();}[jsh@localhost operation]$ ./a.out*int_ptr = 25dog constructor.. Bark Bark!...dog destructor..


上面的打印中我们并没有使用delete释放dog,但是在打印中有输出,这个工作有智能指针完成。

热点排行