class-烦请各位大神给小妹瞅瞅

问题描述

烦请各位大神给小妹瞅瞅

#include
using namespace std;
class xx
{
public:
xx()
{
quantity=0;
price=0;
}
void total();
static float average();
static void display();
private:

int quantity;
float price;
static double discount;
static float sum;
static int n;

};
void xx:: total()
{

if(quantity>=10)
    price=0.98*price;
    sum=quantity*price;
n+=quantity;

}float xx::average()
{
return(sum/n);
}
double xx::discount=0.98;
float xx::sum=0;
int xx::n=0;
void xx::display()
{
cout<<"sum:"<<sum<<" "<<"average:"<<xx::average()<<endl;
}
int main()
{
xx t1[3]={xx(5,23.5),
xx(12,24.56),
xx(100,21.5),
}
t1[0].total ();

t1[1].total ();

t1[2].total ();

t1.display();
return 0;

}
问题;C:UsersdellDesktop8.cpp(42) : error C2661: 'xx::xx' : no overloaded function takes 2 parameters

解决方案

因为楼主下面xx(5,23.5)是这样创建对象的,但又没有重载的构造函数满足,所以会报错
在类xx里面定义一个这样的构造函数就行了
另外还有两个小地方要改一下,我都标注了

 #include<iostream>
#include<string>
using namespace std;
class xx
{
public:
    xx()
    {
        quantity=0;
        price=0;
    }
    xx(int a, float b) //第一处问题
    {
        quantity = a;
        price = b;
    }
    void total();
    static float average();
    static void display();
private:
    int quantity;
    float price;
    static double discount;
    static float sum;
    static int n;
};
void xx:: total()
{
    if(quantity>=10)
        price=0.98*price;
    sum=quantity*price;
    n+=quantity;
}float xx::average()
{
    return(sum/n);
}
double xx::discount=0.98;
float xx::sum=0;
int xx::n=0;
void xx::display()
{
    cout<<"sum:"<<sum<<" "<<"average:"<<xx::average()<<endl;
}
int main()
{
    xx t1[3]={xx(5,23.5),
        xx(12,24.56),
        xx(100,21.5),
    };             //第二处,少了分号
    t1[0].total ();
    t1[1].total ();

    t1[2].total ();

    t1[0].display(); //第三处
    return 0;
}
时间: 2024-09-19 09:00:03

class-烦请各位大神给小妹瞅瞅的相关文章

1排序-c#中的字母冒泡排序 请各位大神指导

问题描述 c#中的字母冒泡排序 请各位大神指导 如何完成字母的冒泡排序 例如 ab abc等相比 那个在先 该怎么写 请各位大神指导下 谢谢

dorado 7 请各位大神帮帮看看这个怎么修改

问题描述 dorado 7 请各位大神帮帮看看这个怎么修改 <Control type="DataTable" showIndicator="false" highlightSelection="false" showHScrollBar="false" showFooter="false" dataset="dsEvecHotelAndMeal" showHeader="

app-android demo 运行的时候遇到如下问题 请各位大神赐教!

问题描述 android demo 运行的时候遇到如下问题 请各位大神赐教! Error:Execution failed for task ':app:mergeDebugResources'. Some file crunching failed, see logs for details 导致R文件报错 解决方案 看看你引入的资源,是否违反规则.

c#窗体-c#两个窗口之间传值,虽然简单,但我仍不会,请各位大神帮忙

问题描述 c#两个窗口之间传值,虽然简单,但我仍不会,请各位大神帮忙 在一个窗口的button按钮中点击,另一个窗口的checkbox被选中,该咋写 解决方案 http://bbs.csdn.net/topics/360140208 解决方案二: 另一个窗体添加一个属性 public bool IsSelected { get { return checkBox1.Checked; } set { checkBox1.Checked = value; } } 主窗体 (Application.O

聊天室-关于java的聊天程序,分服务端和客户端,请java大神帮我调试一下,我检查没编写错误

问题描述 关于java的聊天程序,分服务端和客户端,请java大神帮我调试一下,我检查没编写错误 //服务端 package chatApp; import java.net.*; import java.io.*; import java.util.*; public class chatserverthree implements Runnable { public static final int PORT=1234; protected ServerSocket listen; stat

ndroid 脚标越界-脚标越界求助,调了好久,还请路过大神顺带帮解决。。。

问题描述 脚标越界求助,调了好久,还请路过大神顺带帮解决... 代码如下 package com.example.datebase; import java.util.ArrayList; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; public

分辨率-画面插值加大显示尺寸,请各位大神帮帮忙,谢谢,急、急、急、在线等

问题描述 画面插值加大显示尺寸,请各位大神帮帮忙,谢谢,急.急.急.在线等 现在我有台机子是双镜头的,但是画面显示分辨率的尺寸为1920*720,能不能通过插值的算法把尺寸改为1920*1080,请各位大神帮帮忙,在此谢过了!!!! 解决方案 可以,直接y坐标放大一倍就可以了,平滑下

simpletree-SimpleTree源码中的展开节点方法,不知道怎么展开到指定的节点,请前段大神指教

问题描述 SimpleTree源码中的展开节点方法,不知道怎么展开到指定的节点,请前段大神指教 我现在要做的是在刷新组织树时,展开到指定的节点,我传了一个pnode(组织树中 的ID),但是不知道展开节点的方法是哪个,不知道在哪里做判断停止展开节点.下面是SimpleTree的js代码. 解决方案 下面是SimpleTree 的JS代码 /* jQuery SimpleTree Drag&Drop plugin Update on 22th May 2008 Version 0.3 * Lice

ios-IOS项目中遇到问题,请各位大神帮帮忙,在线急等!!谢谢

问题描述 IOS项目中遇到问题,请各位大神帮帮忙,在线急等!!谢谢 "list={{q="gggggg",a="rrrrrrrr"},{q="gggggg",a="rrrrrrrr"},{q="gggggg",a="rrrrrrrr"}}"有这种样式的一组数据,我放在data中,怎么样才能取出,每个q,a相对应的值!请各位大神帮忙,在线等! 解决方案 先解析出list