आप की घोषणा करने के लिए समारोह से पहले आप का उपयोग करें/यह कहते हैं. तुमने किया था की घोषणा 2 तर्क के संस्करण rectangle
समारोह, लेकिन आपको लगता है भूल करने के लिए घोषित करने के लिए 1 तर्क लेने संस्करण है ।
नीचे दिखाया के रूप में आप जोड़ने की घोषणा के लिए 1 तर्क संस्करण तो अपने कार्यक्रम काम करता है(संकलित).
#include <iostream>
using namespace std;
//declare the function before main
int rectangle(int p, int l);
int rectangle(int p);//ADDED THIS DECLARATION
int main() {
cout << rectangle(3);
return 0;
}
//define the functions after main
int rectangle(int p) {
return p*p;
}
int rectangle(int p, int l) {
return p*l;
}
कार्यक्रम के उत्पादन में देखा जा सकता है यहाँ.
वैकल्पिक समाधान:
यदि आप नहीं चाहते हैं की घोषणा करने के लिए प्रत्येक कार्य के लिए अलग से चाहिए तो आप बस को परिभाषित करने से पहले उन्हें मुख्य के बजाय उन्हें घोषणा के रूप में नीचे दिखाया गया है.
#include <iostream>
using namespace std;
//define the functions before main. This way there is no need to write a separate function declaration because all definition are declarations
int rectangle(int p) {
return p*p;
}
int rectangle(int p, int l) {
return p*l;
}
int main() {
cout << rectangle(3);
return 0;
}