注册 登录
编程论坛 新人交流区

关于构造函数的程序问题

小鱼骨头 发布于 2007-10-20 17:47, 322 次点击

#include "iostream.h"
#include <stdio.h>
#include <string.h>
class count
{
private:
int num;
char s[80];
public:
count (char *str);
~count();
void process();
};
count::count(char *str) //构造函数
{
num=0;
strcpy(s,str);
}


count::~count() //析构函数
{
cout<<"数字字符个数"<<num<<endl;
}


void count::process() //统计个数
{
int i=0;
while(s[i]!='\0')
{
if(s[i]>='0'&&s[i]<='9')
num++;
i++;
}
}
void main()
{
char s[80];
gets(s);
count c(s); 请问这里的C是怎么来的啊 ,我看不明白,谢谢大虾指点
c.process();
}

3 回复
#2
a030512242007-10-20 19:21
count c(s); //此处调用构造函数,已经实现,可以这样使用。
也就是说调用count::count(char *str) //构造函数
完成初始化工作。
#3
飞寒2007-10-20 21:46
这里的c是一个对象!你可以把你在上面定义的类当成一个整形,这样的话count c就相当于int c.
这里的c(s)实际上可以分成两步,第一,先定义一个对象,也就是c,第二,调用函数count::count(char * str);

#4
c36bcqlm2007-10-21 06:28
count::count(char *str)这个 中间的::是什么意思??
1