C++ 需要C+的帮助+;/*=NULL处的代码解析*/
你能告诉我下面的C++ 需要C+的帮助+;/*=NULL处的代码解析*/,c++,comments,C++,Comments,你能告诉我下面的/*=NULL*/的意思吗 CMyCla::CMyCla(CWnd* pParent /*=NULL*/) : CDialog(CCycleTimes::IDD, pParent) { // Some code here } 顺便说一句,我复制了同一行 已成功注释为下面的syte // CMyCla::CMyCla(CWnd* pParent /*=NULL*/) // : CDialog(CCycleTimes::IDD, pParent) 否则,注释失败
/*=NULL*/
的意思吗
CMyCla::CMyCla(CWnd* pParent /*=NULL*/)
: CDialog(CCycleTimes::IDD, pParent)
{
// Some code here
}
顺便说一句,我复制了同一行
已成功注释为下面的syte
// CMyCla::CMyCla(CWnd* pParent /*=NULL*/)
// : CDialog(CCycleTimes::IDD, pParent)
否则,注释失败,样式如下
/*
CMyCla::CMyCla(CWnd* pParent /*=NULL*/)
: CDialog(CCycleTimes::IDD, pParent)
*/
注释操作为什么失败?很可能在类声明中指定了该参数的默认值:
class CMyCla {
public:
CMyCla(CWnd* pParent =NULL);
};
现在在CMyCla::CMyCla()的实现中,不允许重新定义参数的默认值,但是作者可能想提醒存在默认值,所以他将其注释掉
当您执行以下操作时:
/*
CMyCla::CMyCla(CWnd* pParent /*=NULL*/)
: CDialog(CCycleTimes::IDD, pParent)
*/
第一条结束注释(*/)结束已注释部分,因此之后的所有内容现在都未注释:
/*<CommentStart>
CMyCla::CMyCla(CWnd* pParent /*=NULL*/<CommentEnd>)<-this is not commented
: CDialog(CCycleTimes::IDD, pParent) <-neither is this
*/<-this closing comment can produce a compiler error
/*
CMyCla::CMyCla(CWnd*pParent/*=NULL*/)注释在上一个案例中不起作用,因为/**/
样式注释不嵌套。您不能将一条注释放入另一条注释中。注释操作失败,因为编译器从第一条/*
读取到下一条*/
,忽略其间的所有内容,包括其他/*
。此外,如果sharptooth是正确的,则不允许在此处重新定义该值,因此它可能是指针的默认值