标题:冒号语法怎么用
只看楼主
karlzhouzhi
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2005-12-25
 问题点数:0 回复次数:3 
冒号语法怎么用
class Student
{
public:
Student(char*pName="no name",int ssID=0):id(ssID){} //为什么不能加{},如果id是常量或者引用为什么可以加{}
{
cout<<"Constructing student"<<pName<<endl;
strncpy(name,pName,sizeof(name));
name[sizeof(name)-1]='\0';
}
protected:
char name[20];
StudentID id;
};
搜索更多相关主题的帖子: 冒号 语法 name pName Student 
2006-01-18 00:32
柳儿
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:1830
专家分:30
注 册:2004-9-23
得分:0 
这个叫冒号语法么?

这种格式常见于派生类的构造函数,语法形式为:
派生类名::派生类名(参数总表):基类名1(参数表1),...,内嵌对象名1(内嵌对象参数表1),...
{
派生类新增成员的初始化语句;
}

例如:
class People
{
public:
People(int age){ m_age = age ;}
~People();
private:
int m_age;
};
class Student : public People
{
public:
Student(int age, string name):People(age)
{
m_name = name;
}
~Student();
private:
string m_name;
};

[此贴子已经被作者于2006-1-18 11:37:50编辑过]


成功会使人骄傲。如果你骄傲自大,你就会停止学习。不学习,人就停止了进步
2006-01-18 11:33
unicorn
Rank: 4
等 级:贵宾
威 望:14
帖 子:1066
专家分:0
注 册:2005-10-25
得分:0 
所谓的冒号语法就是构造函数的初始化列表形式吧 呵呵

unicorn-h.spaces. ◇◆ sava-scratch.spaces.  noh enol ! pue pu!w hw u! shemle aq ll!m noh 
2006-01-18 21:17
炫灿星空
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-3-29
得分:0 
好像是的诶
2012-05-14 10:25



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-43223-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.007501 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved