Wyjmowanie elementów z pustej kolejki, różne zachowanie

0

Cześć,

pytanie jest następujące. Oczywiście wiem, że nie skoro nic nie włożyliśmy do kolejki to nie powinniśmy z niej nic wyciągać ale zrobiłem sobie taki test:

//nie wywala sie
int main()
{
	std::queue<int> que;

	que.front();	//zwraca 0
	que.pop();

	return 0;
}


struct Foo {
	std::vector<int> a;
};

//leci oczekiwany SegFault
int main()
{
	std::queue<Foo> que;

	que.front();
	que.pop();

	return 0;
}

Czy w pierwszym przypadku też nie powinien polecieć SegFault?

1

To co robisz to UB. Nie ma "powinien"/"nie powinien", zdarzyć się może wszystko.

1 użytkowników online, w tym zalogowanych: 0, gości: 1