[C++ primer 学习笔记][01]刚开始

1、&是引用吗?

Sales_item operator+(const Sales_item&, const Sales_item&);

两个引用,省去参数名称而已。

&放在变量前面是引用,比如  int &r = I1;


2、够造函数加个冒号啥意思?

Sales_item(const std::string &book):
              isbn(book), units_sold(0), revenue(0.0) { }

3、函数声明后又有个const,啥意思?

bool same_isbn(const Sales_item &rhs) const
        { return isbn == rhs.isbn; }


【解释】

1、构造函数后冒号的含义:

构造函数后的但冒号是初始化列表,用以初始化类成员变量


2、函数声明后的const含义:

const改变了隐含的this形参的类型。这样在调用total.same_isbn(trans)时,隐含的this形参将是一个指向total对象的const Sales_item * 类型的指针。

如同下面函数体定义一样

bool Sales_item::same_isbn(const Sales_item * const this,
               const Sales_item &rhs) const
        { return isbn == rhs.isbn; }



你可能感兴趣的:(C++,String)