2016-10-04 61 views
0

我試圖登錄幾個值到一個文本文件中未聲明的,但每次我這樣做,它給了我這個錯誤:誤差函數範圍

[錯誤]「保存」並沒有在此聲明範圍

下面的代碼:

#include "iostream" 
#include "fstream" 

using namespace std; 
double n1, n2; 

int main() 
{ 

    n1 = 1; 
    n2 = 2; 
    save(n1, n2) 

} 
int save(double a, double b) 
{ 
    ofstream log; 
    log.open("test.txt"); 
    log << 1 << 2 << "\n"; 
    log.close(); 
} 

我是新的C++編程,並在一般情況下,請以一種簡單的方式解釋。

謝謝。

+0

如果您閱讀https://en.wikipedia.org/wiki/Forward_declaration – Mawg

+0

[函數順序是否在C++中很重要?](https://stackoverflow.com/questions/26122024/does- function-order-matter-in-c) – CoryKramer

回答

2

main中的代碼需要知道存在這樣的函數。它需要任何聲明或它上面的定義:

int save(double a, double b); 

int main() //... 

順便說一句:你應該避開使用全局變量。並且您不使用save函數中的參數。

+2

不回答這個問題,這個問題有500萬個重複,你應該投票結束。 –

+0

感謝您的快速回答,工作得很好! –

+0

@Ben好吧,我會試試。 – krzaq