Ciao a tutti,
sto cercando di caricare un file .obj (contenente un modello 3D) con le OpenGL. Per fare questo ho creato una funzione che trova il numero dei vertici all'interno del file e poi crea una matrice con tutti i vertici.

Il problema è che la funzione che trova il numero dei vertici non funziona D:

la stavo testando con una console app, ecco il codice:

codice:
#include "stdafx.h"
#include <iostream>
#include <string>
#include <fstream>
#include <stdio.h>

using namespace std;

int calcolaV(string file){
	char *file_obj=new char[file.size()];
	string riga="";
	int n=0;

	for(int i=0; i<file.size(); i++){
		file_obj[i]=file[i];
	}

	fstream input;
	input.open(file_obj,fstream::in);
	while(getline(input,riga)){
		if(riga[0]=='v' && riga[1]==' '){
			n++;
		}
	}
	input.close();

	return n;
}

int main(){
        int a;
	int vertici=calcolaV("cubo.obj");
	cout<<"Numero vertici: "<<vertici;



	cout<<"\nFine";
	cin>>a;
}
Il problema è che getline non funziona! mi restituisce 0 perchè il ciclo non parte proprio e quindi la variabile n non viene incrementata!! perchè?? help

PS: se non avete notato, ho scritto alla fine:
cout<<"\nFine";
cin>>a;
perchè è l'unico modo per poter leggere i dati che ho scritto, altrimenti la finestra si chiude subito! perdonate la mia ignoranza, ma cosa dovrei scrivere? io ero abituato con il dev-c++ e scrivevo system("PAUSE"); ma ora sono passato a visual c++ 2010 e non so cosa scrivere