Bagaimana untuk menggunakan kompilasi terpisah C++?
天蓬老师
天蓬老师 2017-06-20 10:06:13
0
1
887

Pengenalan C++ Primer kepada kompilasi berasingan adalah sangat mudah, jadi saya ingin mencuba cara menggunakannya sendiri. Jalankan kod berikut Apabila menjalankan fun() dan absolute() dalam fungsi utama, anda akan digesa bahawa tiada fungsi ditentukan. Adakah itu sebabnya? Apakah yang perlu dilakukan untuk menjadikan kod berjalan lancar?

Fungsi utama:

#include <iostream>
#include <string>
#include <vector>
#include "Chapter6.h"

using namespace std;

//cnt函数每次被调用则返回值+1
int cnt()
{
    static int rtn = 0;
    return rtn++;
}

int main()
{
    for (size_t i = 0; i < 10; ++i)
    {
        cout << cnt() << endl;
    }
    int a = 0;
    string c;
    do
    {
        cout << "Please enter a number:" << endl;
        cin >> a;
        cout << a << "! = " << fun(a) << '\n' << absolute(a) << endl; //undefined reference to 'absolute(double), 'fun(int)'
        cout << "More numbers? Please enter yes or no." << endl;
        cin >> c;
    }
    while (!c.empty() && c[0] == 'y');
    return 0;
}

Fail pengepala Bab6.h:

#include <iostream>
#include <string>
#include <vector>

using namespace std;

int fun(int a);
double absolute(double a);
int cnt();

fakta.cpp:

#include <iostream>
#include <string>
#include <vector>
#include "Chapter6.h"

using namespace std;

//阶乘计算
int fun(int a)
{
    int rec = 1;
    while (a > 1)
    {
        rec *= a--;
    }
    return rec;
}

//返回绝对值
double absolute(double a)
{
    if (a >= 0)
        return a;
    else
        return -a;
}
天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

membalas semua(1)
typecho

Sila bawa semua .cpp ​​nama fail semasa menyusun:

g++ main.cpp fact.cpp

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan