• 类-委托构造函数



    • 类的基础定义
      -类的基本思想是数据抽象和封装,数据抽象依赖于接口和实现分离的编程技术。类的接口包括用户所能执行的操作;类的实现则包括的数据成员、负责接口实现体以及定义类所需的各种私有函数;

    主函数

        int main()
        {
            Sales_date first("asas-sdgs-gds-gdf-g", 80, 124, 46);
            Sales_date second;
            Sales_date third("981293-235-4-5-32");
            Sales_date(cin);
            system("pause");
            return 0;
        }
    

    主体

    
    #include <iostream>
    #include<string>
    using namespace  std;
    class Sales_date
    {
        friend std::istream &read(std::istream& is, Sales_date&item);
        friend std::ostream&write(std::ostream&os, const Sales_date&item);
    
    public:
        Sales_date(const string &book, unsigned num, double sellp, double salep)
            :bookNo(book), unit_sold(num), sellingprice(sellp), saleprice(salep)
        {
            if (sellingprice)
                discount = saleprice / sellingprice;
            cout << "该构造函数接受书号,销售量。原价。实际书架四个信息" << endl;
        }
        Sales_date() :Sales_date("", 0.0, 0.0, 0.0)
        {
            cout << "该构造函数不接受任何信息" << endl;
        }
        Sales_date(const string &book) :Sales_date(book, 0, 0, 0)
        {
            cout << "该构造函数接收署名信息" << endl;
        }
        Sales_date(std::istream &is) :Sales_date()
        {
            read(is, *this);
            cout << "该构造函数接收用户输入的信息" << endl;
        }
        std::istream&read(std::istream&is, Sales_date&item)
        {
            is >> item.bookNo >> item.unit_sold >> item.sellingprice >> item.saleprice;
            return is;
        }
        std::ostream&write(std::ostream&os, Sales_date&item)
        {
            os << item.bookNo << item.unit_sold << item.sellingprice << item.saleprice;
            return os;
        }
    private:
        std::string bookNo;
        unsigned unit_sold = 0;
        double sellingprice = 0.0;
        double saleprice = 0.0;
        double discount = 0.0;
    
    };

    类
    由此可以分析构造函数在委托其他构造其他构造函数时的步骤。

  • 相关阅读:
    一、NHibernate 使用配置与实现简单查询
    NHibernate学习步骤
    sql2008转成2005的解决办法
    二、使用NHibernate对数据库实现增、删、改、查操作
    FusionCharts 点击事件 新页面
    [分享]NHibernate视频教程
    FusionCharts Free使用文档教程第五章FusionCharts Free使用dataXML加载数据
    职业规划
    网页生成pdf文件
    FusionCharts Free使用文档教程第四章FusionCharts Free使用JavaScript加载图形
  • 原文地址:https://www.cnblogs.com/VCctor/p/5100700.html
Copyright © 2020-2023  润新知