Ho semplificato un po... ma ancora nulla.
ProvaMath.h
codice:
/* classe ProvaMath */
class ProvaMath{
public:
int somma(int a, int b);
int sottrazione(int a, int b);
}
ProvaMath.cpp
codice:
#include <iostream.h>
#include "ProvaMath.h"
int ProvaMath::somma(int a, int b){
return(a+b);
}
int ProvaMath::sottrazione(int a, int b){
return(a-b);
}
main(){
int c;
int d;
ProvaMath* provaMath;
provaMath=new ProvaMath();
cout << "Inserisci un numero intero";
cin >> c;
cout << "inserisci un'altro numero intero" ;
cin >> d;
cout << "la loro somma è: " << provaMath->somma(c,d) << endl;
cout << "la loro differenza è: " << provaMath->sottrazione(c,d) << endl;
return(0);
}
Log di compilazione:
Compilatore: Default compiler
Esecuzione di g++.exe...
g++.exe "D:\progetti c++\ProvaMath.cpp" -o "D:\progetti c++\ProvaMath.exe" -I"C:\Dev-Cpp\lib\gcc\mingw32\3.4.2\include" -I"C:\Dev-Cpp\include\c++\3.4.2\backward" -I"C:\Dev-Cpp\include\c++\3.4.2\mingw32" -I"C:\Dev-Cpp\include\c++\3.4.2" -I"C:\Dev-Cpp\include" -L"C:\Dev-Cpp\lib"
In file included from C:/Dev-Cpp/include/c++/3.4.2/backward/iostream.h:31,
from D:\progetti c++\ProvaMath.cpp:1:
C:/Dev-Cpp/include/c++/3.4.2/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <iostream> instead of the deprecated header <iostream.h>. To disable this warning use -Wno-deprecated.
D:\progetti c++\ProvaMath.cpp:3: error: new types may not be defined in a return type
D:\progetti c++\ProvaMath.cpp:3: error: extraneous `int' ignored
D:\progetti c++\ProvaMath.cpp:3: error: prototype for `ProvaMath ProvaMath::somma(int, int)' does not match any in class `ProvaMath'
D:\progetti c++\/ProvaMath.h:5: error: candidate is: int ProvaMath::somma(int, int)
D:\progetti c++\ProvaMath.cpp:3: error: `ProvaMath ProvaMath::somma(int, int)' and `int ProvaMath::somma(int, int)' cannot be overloaded
D:\progetti c++\ProvaMath.cpp: In member function `ProvaMath ProvaMath::somma(int, int)':
D:\progetti c++\ProvaMath.cpp:4: error: conversion from `int' to non-scalar type `ProvaMath' requested
Esecuzione terminata
Può essere che il compilatore non funzioni bene?