Scusami, ma non riesco bene a capire il tuo problema dal punto di vista semantico.

Dal punto di vista sintattico

codice:
#include <complex>
#include <iostream>

using namespace std;
typedef complex<double> comp;


int main()
{

	comp summ_inizio(0); 
	double frame_vett[16384], frame_vett_new[16384]; 
	const comp pig(3.1415926535897932384626433832795); 
	const comp k_summ_1(1); 
	const comp j(0,1);
	double dim_array_fft_1 = 1.0/16384.0; 

	int ind_summ_1 = 1;

	summ_inizio = summ_inizio + (
		comp(frame_vett_new[ind_summ_1+748]) * 
		exp(
			-j * comp(2.0,0.0) *
			pig *
			(k_summ_1 - comp(1,0)) *
			comp(static_cast<double>(ind_summ_1)) *
			comp(dim_array_fft_1)
		)
	); 


	return 0;

}
se dichiari const summ_inizio, non puoi più assegnargli dei valori, e inoltre occhio ai cast...

Ciò che ho postato ora, è sintatticamente corretto, vedi se riesci ad adattarlo a tuo uso.