Vi scrivo il codice delle varie classei

codice:
#include <Windows.h>
#include <vector>
#include <crtdbg.h>


#include "classe_a.h"



using namespace std;
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd )
{
	_CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );


	PtrA->Init();
	int h;
	h=0;
	return h;
}

codice:
//File classe_a.h

class ClasseA
{
    public:
	ClasseA();
	virtual void Init();
};

extern ClasseA*	PtrA;

//File classe_a.cpp
#include "classe_a.h"


ClasseA::ClasseA()
{

}

void ClasseA::Init()
{
	int fkf=0;
}
File
codice:
//File classe_b.h
#include <Windows.h>
#include "classe_a.h"

class Bb: public ClasseA
{
    public:
	Bb();
	void Init();
};

//File classe_b.cpp
#include "classe_b.h"
#include <vector>
using namespace std;
ClasseA* PtrA = new Bb();

Bb::Bb():ClasseA()
{

}
void Bb::Init()
{
	vector<int> ss;
	ss.push_back(43);
	ss.clear();
}

Questo codice genera memory leak quando faccio ss.push_back(43);, perchè? i vector di int come possono generare memory leak VVoVe: ?

Aiuto