| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2191 人关注过本帖
标题:类编译
只看楼主 加入收藏
tredy6t
Rank: 2
等 级:论坛游民
帖 子:41
专家分:59
注 册:2015-8-6
结帖率:45.45%
收藏
已结贴  问题点数:20 回复次数:5 
类编译
stock.h
程序代码:
#ifndef STOCK_h_
#define STOCK_H_
#include<string>

//class declaration
class Stock
{
private://not indeed
        std::string company;
    long shares;
    double share_val;
    double total_val;
    void set_tot()
    {
        total_val = shares*share_val;
    }
public:
    void acquire(const std::string &co, long n, double pr);
    void buy(long num, double price);
    void sell(long num, double price);
    void update(double price);
    void show();
};
#endif

stock1.cpp
程序代码:
#include<iostream>
#include"stock.h"
void Stock::acquire(const std::string &co, long n, double pr)
{
    company = co;
    if (n < 0)
    {
        std::cout << "Number of shares can't be negative; "
            << company << "Shares set to 0.\n";
        shares = 0;
    }
    else
        shares = n;
    share_val = pr;
    set_tot();
}
void Stock::buy(long num, double price)
{
    if (num < 0)
    {
        std::cout << "Number of shares can't be negative, "
            << "Transaction is abort.\n";
    }
    else
    {
        shares += num;
        share_val = price;
        set_tot();
    }
}
void Stock::sell(long num, double price)
{
    using namespace std;
    if (num < 0)
    {
        cout << "Number of shares can't be negative, "
            << "Transaction is abort.\n";
    }
    else if (num>shares)
    {
        cout << "You can'tsell more than you have! "
            << "Transaction is abort.\n";
    }
    else
    {
        shares -= num;
        share_val = price;
        set_tot();
    }
}
void Stock::update(double price)
{
    share_val = price;
    set_tot();
}
void Stock::show()
{
    std::cout << "Company: " << company
        << " Shares: " << shares << '\n'
        << " Shares Price:$ " << share_val
        << " Total Worth:$ " << total_val << '\n';
}

stock2.cpp
程序代码:
#include "stdafx.h"
#include<iostream>
#include"stock.h"


int _tmain(int argc, _TCHAR* argv[])
{
    Stock vital;
    vital.acquire("NanoSmart", 20, 12.50);
    vital.show();
    vital.buy(15, 18.125);
    vital.show();
    vital.sell(400, 20.00);
    vital.show();
    vital.buy(300000, 40.125);
    vital.show();
    vital.sell(300000, 0.125);
    vital.show();
    return 0;
}

The err
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: company 
2016-01-14 11:21
hjx1120
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:李掌柜
等 级:贵宾
威 望:41
帖 子:1314
专家分:6927
注 册:2008-1-3
收藏
得分:7 
不明白楼主为什么要用
int _tmain(int argc, _TCHAR* argv[])
这个作入口,改成标准入口2012编译通过
程序代码:
//#include "stdafx.h"
#include<iostream>
#include"stock.h"


int main()
{
    Stock vital;
    vital.acquire("NanoSmart", 20, 12.50);
    vital.show();
    vital.buy(15, 18.125);
    vital.show();
    vital.sell(400, 20.00);
    vital.show();
    vital.buy(300000, 40.125);
    vital.show();
    vital.sell(300000, 0.125);
    vital.show();
    system("pause");
    return 0;
}

2016-01-14 13:17
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
收藏
得分:7 
用_tmain作为入口的好像是将工程属性改为win32 控制台类。

能编个毛线衣吗?
2016-01-14 13:23
hjx1120
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:李掌柜
等 级:贵宾
威 望:41
帖 子:1314
专家分:6927
注 册:2008-1-3
收藏
得分:0 
刚刚百度了下,楼主可能是少了tchar.h头文件
让编译器无法识别
int _tmain(int argc, _TCHAR* argv[])
2016-01-14 13:33
tredy6t
Rank: 2
等 级:论坛游民
帖 子:41
专家分:59
注 册:2015-8-6
收藏
得分:0 
VS编译的,编译其他文件能通过,只是多个文件貌似我没搞懂,昨天才安装好。DEVC能编译成功
谢谢大家
2016-01-14 16:43
仰望星空的
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:50
专家分:248
注 册:2015-9-28
收藏
得分:7 
不同的函数入口调用不一样的链接库运行程序,
2016-01-14 20:02
快速回复:类编译
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.106138 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved