在C ++类中使用的默认值

时间:2015-07-29 15:03:53

标签: c++

我一直在阅读代码,我对代码中的一行感到困惑: 以下是代码的一部分:

class mom_set
{
public:
    int nm;
    int *mom_ind,*mode_off,*mode_count,**mode;
    int n_mom,n_eff;
    int order;
.......
.....
    mom_set(int nm0=9):nm(nm0)
    { mom_ind=new int[(nm*2+1)*(nm*2+1)*(nm*2+1)];
      mode_off=new int[3*nm*nm+1];
      mode=new int*[3*nm*nm+1];
      mode_count=new int[3*nm*nm+1];
      clear();}
......
.....
};

我不知道如何解释这一行" mom_set(int nm0 = 9):nm(nm0)" 。你能解释一下吗?

1 个答案:

答案 0 :(得分:3)

mom_set :与类名相同意味着它是构造函数

(int nm0 = 9):参数列表。类型int的一个参数是可选的。如果未通过,则此参数默认为值9

constructor initializer list

的开头

nm(nm0):成员nm初始化为值nm0

{...} :构造函数体的其余部分