题目:1+2+3+...+n
使用全局变量:
int sum=0;
int i=1;
class Sum
{
public:
Sum()
{
sum+=i;
i++;
}
};
class Solution
{
public:
int Sum_Solution(int n)
{
Sum a[n];//调用n次构造函数
return sum;
}
};
使用静态变量:
class Sum
{
public:
Sum()
{
_sum+=_i;
_i++;
}
//获取_sum的函数:
static int Get_sum()
{
return _sum;
}
private:
static int _sum;
static int _i;
};
//静态成员初始化
int Sum::_sum=0;//
int Sum::_i=1;
class Solution
{
public:
int Sum_Solution(int n)
{
Sum a[n];//调用n次构造函数
return Sum::Get_sum();
}
};
内部类的写法:
class Solution
{
class Sum//sum是Solution的友元
{
public:
Sum()
{
_Sum+=_i;
_i++;
}
};
public:
int Sum_Solution(int n)
{
Sum a[n];
return _sum;
}
private:
static int _sum;
static int _i;
};
int Solution::_sum=0;
int Solution::_i=1;