Проблем с функции в C++

Здавейте,

пиша една програма на C++и малко зациклих на едно място с едни финкции.

Това ми е една от многото функции, те са еднакви но само променливата е различна

class Formuli
{
    void Formuli::getNsp()
    {
	do
	{
		double Nsp;
		cout << "Nsp - Броят на рамките в едно изделие. \n";
		cout << "Nsp = ";
	        cin >> Nsp;
		bNsp = cin.fail();
		cin.clear();
		cin.ignore(numeric_limits<streamsize>::max(), '\n');
		cout << "Моля въведете число а не символ! \n";
	} while (bNsp == true);
    }
};

първият проблем е, че в header файла не ми приема да инициализирам променливата double Nsp; и заради това трябва да е тук.

Имам няколко такива класове които се различават по формулата и името.

class Formuli1
{
    Formuli::getHbo1_1();
    {
		Hbo1_1 = (1.2*Nsp / Nd)*(Np*(0.36 - 1.21*h + 2.74*B + 58.9*h*getB + 0.18*B*B) + 7.22 - 1.35*L - 13.81*B - 195 * h + 7.5*L*B + 25.5*L*h + 245 * B*h + 0.1*L*L + 6.25*B*B + 1096 * h*h + 1.2*Np*(6.96 + 0.4*L - 1.5*B - 233 * h + 4.6*L*B + 37.4*L*h + 187.5*B*h + 0.15*L*L - 1.9*B*B + 1850 * h*h));
		cout << fixed << setprecision(3) << "Hbo=" << Hbo1_1 << "\n";
	}
};

Идеята ми е дали може функциите, които ми трябват от class Formuli да ги извикам. Всяка една буква от формулата ми е метод, и трябва да задам на съответната буква въответният метод, който съм го извикал от предишния клас. Идеята ми е дали може да извикам функцията getNsp в class Formuli1 но да му кажа да се казва с друго име и с това име да го извикам във функция Hbo1_1.