I have a problem with separating my classes into one header and one cpp file. Below is my main cpp file:
 #include "myclasses.h"     
 #include <math.h>                              
 #include <string.h>    
 #include "stdafx.h"
 #include <fstream>                             
 #include <stdio.h>                             
 #include <stdlib.h>
 #include <vector>
  .....my other headers....
 const int populationsize = 10;
Chrom temp;
chrom popcurrent[populationsize];
chrom poptemp;
chrom popnext[populationsize];
chrom popnextxover[populationsize];
And then couple of function definitions and then int main {body} I have myclasses.h header file as follows:
#ifndef myclasses_h
#define myclasses_h
#include <vector>
#include <iostream>
#include <fstream>
#include <stdafx.h>
using namespace std;
int Machines, Jobs,jobscp;
typedef class solutionset
{
public:
vector <int> indexinmilp;
vector <int>  indexinga;
vector <int>  startinmilp;
void resize();
};
solutionset problemsolution;
typedef class Chrom                                 
{
public:
vector<vector <float>> StartTime;
vector<vector <int>> Processing;
vector<vector < int>> t1;
int M;
int W;
float fit;
void variablesresize();
} ;
class Problem{
public:
vector<vector <int>> Processing;
vector<vector < int>> t1;
int M;
int W;
void setvectorsize();
};
#endif
And I defined the myclasses.cpp as follows:
#include "myclasses.h"
#include <vector>
#include <stdafx.h>
#include <iostream>
#include <fstream>
using namespace std;
vector< int> indexinmilp;
vector< int> indexinga;
vector <int>  startinmilp;
void solutionset::resize(){
    for (int i = 0; i < Machines - 1; ++i)              
    {
        indexinmilp.resize(jobscp);
        indexinga.resize(jobscp);
        startinmilp.resize(jobscp);
    }
};
solutionset problemsolution;
  void Chrom::variablesresize(){
    int i = 0, j, k;
    float a;
    std::vector<float> datapoints;
    std::ifstream myfile("Input.dat", std::ios_base::in);
    i = 0;                  
    myfile.open("Input.dat");                   
    while (!myfile.eof())
    {
        myfile >> a;
            if (!myfile)                
        {
            myfile.clear();             
            myfile.ignore(1);           
        }
        else
        {
            datapoints.push_back(a);
            ++i;
        }
    }
    myfile.close();
    Jobs = datapoints[0];
    Machines = datapoints[1];
    jobisconsidered.resize(Machines);
    StartTime.resize(Machines)                  
    for (int i = 0; i < Machines; ++i)
    {
        StartTime[i].resize(Jobs);  
        jobisconsidered[i].reserve(Jobs);
    }
}
void Problem::setvectorsize()
{ 
    Processing.resize(Machines);
    t1.resize(Machines);
    for (int i = 0; i < Machines; ++i)
    {
        Processing[i].resize(Jobs);
        t1[i].resize(Jobs);
    }
};
However I see couple of errors when I run it in visual studio. I check other threads in related to this question such as Difference between implementing a class inside a .h file or in a .cpp file and still cannot figure it what is the problem. In addition, I have some global variables but it seems I need to redefine them in myclasses.h header file and myclasses.cpp
Errors that I get:
First for myclasses.cpp:
For command  vector< int> indexinmilp; Errors include
Error   3   error C2143: syntax error : missing ';' before '<'
Error   4   error C4430: missing type specifier - int assumed. Note: C++ does not support default-int    
For command vector< int> indexinga; Errors include
Error   5   error C2143: syntax error : missing ';' before '<'
Error   6   error C4430: missing type specifier - int assumed. Note: C++ does not support default-int   
For command vector< int> indexinga; Errors include:
Error 7 error C2086: 'int vector' : redefinition Error 8 error C2143: syntax error : missing ';' before '<'
For command indexinga.resize(jobscp); errors include:
Error 15 error C2228: left of '.resize' must have class/struct/union Error 16 error C2065: 'startinmilp' : undeclared identifier
Or in command void Chrom::variablesresize(){ I get below error:
Error 20 error C2653: 'Chrom' : is not a class or namespace name
Actually there are more than 50 errors. Maybe I made some mistake.The code was working well before this separation.
Any help is highly appreciated. Regards
 
    