Переименуйте ваш метод, в противном случае вызов будет неоднозначным.
Используйте заголовочный файл с именем "xyz.h", где вы объявляете свой метод,Затем в файле main.cpp включите этот заголовочный файл (вместо его исходного файла).Исходный файл "xyz.cpp" должен также включать заголовочный файл.Затем в main.cpp просто вызовите метод следующим образом: int returnedValue = myFunction();
Полный пример:
xyz.h
#ifndef XYZ_H
#define XYZ_H
int myFunction();
#endif /* XYZ_H */
xyz.cpp
#include <iostream>
#include <cmath>
#include "xyz.h"
using namespace std;
int myFunction() {
float a, o1p1, o1p2, o1;
cout << "Input number: ";
cin >> a;
o1p1 = (1+cos(4*a));
o1p2 = (1+cos(2*a));
o1 = ((sin(4*a))/o1p1)*((cos(2*a))/o1p2);
cout << "\nZ1 = ";
cout << o1;
cout << "\n ";
return 0;
}
main.cpp
#include <iostream>
#include "xyz.h"
using namespace std;
int main(int argc, const char * argv[]) {
int cl;
cout << ("Make ur choice (1-1)");
cin >> cl;
switch(cl){
case (1):{
int returnedValue = myFunction();
cout << returnedValue << endl;
}
}
return 0;
}
Вывод:
Georgioss-MBP:Desktop gsamaras$ g++ main.cpp xyz.cpp -lm
Georgioss-MBP:Desktop gsamaras$ ./a.out
Make ur choice (1-1)1
Input number: 2
Z1 = -2.18504
0