Salve,

volevo chiedere una cosa, i costruttori sono validi solo per le classi o anche per le strutture? Ad esempio nel seguente codice posso considerare Artist::Artist un costruttore od un semplice metodo membro della struttura?

codice:
struct Artist
{
	string  surname_, firstname_;

	Artist(string const & surname, string const & firstname) 
		: surname_(surname), firstname_(firstname) {}
};
La sintassi sicuramente sembra quella del costruttore, ma allora nel main quando faccio:

codice:
int main()
{
	vector<Artist> artists;
	artists.push_back(Artist("Larry", "Wall"));
	(...)
}
e come se chiamassi ogni volta il costruttore oppure sto passando dei parametri ad una normale funzione membro?

grazie