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

这个类的中载函数怎么在类外定义啊请大家帮一下忙把

2012-05-20 
这个类的中载函数如何在类外定义啊,请大家帮一下忙把。C/C++ code#include iostream using namespace std

这个类的中载函数如何在类外定义啊,请大家帮一下忙把。

C/C++ code
#include <iostream> using namespace std;class MyArray{private:    int *arr;        //用于存放动态分配的数组内存首地址    int size;        //数组大小public:    MyArray & operator =(const MyArray &A); //重载“=”使得数组对象可以整体赋值    int & operator[](int i);        //重载[],使得Array对象也可以如C++普通数组一样,用a[i]形式取出};int main(){    int a[10]={1,2,3,4,5,6,7,8,9,10};    int b[10]={4,5,6,7,8,9,10,11,12,13};    MyArray arr1(a,10);    MyArray arr2(b,10);    MyArray arr3(10);    system("pause");    return 0;} 


[解决办法]
C/C++ code
int MyArray::operator[](int i){    return arr[i];}
[解决办法]
C/C++ code
class MyArray{private:    int *arr;        //用于存放动态分配的数组内存首地址    int size;        //数组大小public:    MyArray & operator =(const MyArray &A); //重载“=”使得数组对象可以整体赋值    int & operator[](int i);        //重载[],使得Array对象也可以如C++普通数组一样,用a[i]形式取出};MyArray& MyArray::operator=(const MyArray& A){    size = A.size;    memcpy(arr,A.arr,sizeof(int)*size);    }int& MyArray::operator[](int i){    return arr[i];}
[解决办法]
MyArray& MyArray::operator=(const MyArray& A)返回*this就可以了

热点排行