RGB像素类的实现pixel.cpp

/*---------------------------------------------------*/
/*Implement of pixel class                           */
/*File name:  pixel.cpp                              */
#include "pixel.h"

//三个构造函数的实现
pixel::pixel():red(0),green(0),blue(0)
{
}

pixel::pixel(int n){
red = n;
green = n;
blue = n;
}

pixel::pixel(int r, int g, int b){
red = r;
green = g;
blue = b;
}

/*------------------------------------------*/
//+ operator 因为调用对象为运算的第一个运算数,
//形参为第二个运算数,因为要值传递,所以加上const保证不改变对象的数据成员
pixel pixel::operator +(pixel p) const{
pixel temp;
temp.red = red + p.red;
temp.green = green + p.green;
temp.blue = blue + p.blue;
return temp;
}


//友元函数可以访问类的私有成员, 只需在类的声明中说明为friend.
//因为友元函数并不是成员函数,没有任何调用对象,因此需要两个参数
pixel operator+(pixel p1,pixel p2){
pixel temp;
temp.red = p1.red + p2.red;
temp.green = p1.green + p2.green;
temp.blue = p1.blue + p2.blue;
return temp;
}

//* operator 同乘以一个double型的值
pixel pixel::operator *(double v) const{
pixel temp;
temp.red = red*v;
temp.green = green*v;
temp.blue = blue*v;
return temp;
}

// / operator 同除以一个整数
pixel pixel::operator /(int v) const{
pixel temp;
temp.red = red/v;
temp.green = green/v;
temp.blue = blue/v;
return v;
}

转载于:https://www.cnblogs.com/aquar/archive/2009/08/12/3451530.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值