注册 登录
编程论坛 C++教室

问题挺简单的就想知道编译为什么不能执行,#ifndef第一次上机用

q18371528148 发布于 2018-10-31 19:42, 1447 次点击

程序代码:
#ifndef STOCK10_H_
#define STOCK10_H_
#include<string>

class stock
{
    private:
        std:string company;
        long shares;
        double share_val;
        double total_val;
        void set tot() {total_val=shares*share val;}
    public:
        stock();
        stock(const std::string &co,long=0,double pr=0.0);
        ~stock();
        void show();
};
#endif // STOCK10_H_

#include<iostream>
#include"stock10.h"
stock:stock()
{
    std::cout<<"Default constructor called\n";
    company="no name";
    shares=0;
    share_val=0.0;
    toatal_val=0.0;
}

stock::stock(const std::string &co,long,double pr)
{
    std::cout<<"Constructor using "<<co<<" called\n";
    company=co;
    shares=n;
    share_val=pr;
    set_tot;
}

stock::~stock()
{
    std::cout<<"Bye, "<<company<<"!\n";
}

void stock::show()
{
    using std::cout;
    using std::endl;
    cout<<"Company: "<<company
    <<"     shares: "<<shares<<endl
    <<"     share price: "<<share_val
    <<"     total worth: "<<total_val<<endl;
}
#include<iostream>
#include"stock10.h"
int main()
{
    {
        using std::cout;
        cout<<"Using constructors "<<endl;
        stock stock1("huang",12,20.0);
        stock1.show();
    }
    return 0;
}

只有本站会员才能查看附件,请 登录

感谢大佬,帮帮忙啊
2 回复
#2
复旦2018-10-31 23:18
缺少stock.h头文件。检查一下。
#3
Jonny02012018-11-01 18:43
不知道你那个码在打什么, 还是有什么国家机密
如同 复旦 所说, 可能是这个原因
但是可能也是其他原因
检查一下你的文件结构
1