• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

abort() has been called VS15 problem SFML

Object Storage Arubacloud
0 głosów
546 wizyt
pytanie zadane 9 września 2016 w C i C++ przez sprytny22 Obywatel (1,130 p.)

Witam, mam problem napisałem sobie menager tekstur z tego poradnika:

http://quirinnos.pl/kurs-sfml-2-3-10-menadzer-tekstur/

Napisalem prosty program w sfml zaladowałem pare spritów za pomoca tego i po kompilacji pojawil sie bład:

"DEBUG ERROR abort() has been called "

a na konsoli pojawil sie zapisek:

Assertion failed: instance == nullptr, file c:\users\piotr\documents\visual studio 2015\projects\gra_sys\gra_sys\menagerspr.cpp, line 9.

Ktos mi moze z grubsza powiedziec o co chodzi bez pokazywania kodu? :)

2 odpowiedzi

0 głosów
odpowiedź 9 września 2016 przez easytodo Mądrala (5,380 p.)

Wszystko jest napisane w komunikacie:

Assertion failed: instance == nullptr 

Assert zwraca false i program się zamyka. Powód prawdopodobnie leży tutaj:

c:\users\piotr\documents\visual studio 2015\projects\gra_sys\gra_sys\menagerspr.cpp, line 9. 

Ciężko powiedzieć coś więcej bez kodu.

komentarz 9 września 2016 przez sprytny22 Obywatel (1,130 p.)
#include "MenagerSPR.h"
#include <assert.h>


MenagerSPR* MenagerSPR::instance = nullptr;

MenagerSPR::MenagerSPR()
{
	assert(instance == nullptr); // <--- TUTAJ 
	instance = this;
}


MenagerSPR::~MenagerSPR()
{
}

sf::Texture& MenagerSPR::setTexture(std::string const& filename, std::string const& name) {
	auto& texture_manager = instance->textures;
	auto if_exist = texture_manager.find(name);
	if (if_exist != texture_manager.end()) {
		return if_exist->second;
	}
	else {
		sf::Texture& texture = texture_manager[name];
		texture.loadFromFile(filename);
		return texture;
	}
}
sf::Texture& MenagerSPR::getTexture(std::string const& name) {
	auto& texture_manager = instance->textures;
	return texture_manager.at(name);
}

 

komentarz 9 września 2016 przez criss Mędrzec (172,590 p.)
Jeśli instance jest równy nullptr, to assert nie powinien się wykonać. Na pewno przypisałeś nullptr ?
0 głosów
odpowiedź 9 września 2016 przez Michał Muzyka Pasjonat (24,080 p.)
wrzuć kod z "MenagerSPR.h" oraz z main

Podobne pytania

0 głosów
1 odpowiedź 502 wizyt
pytanie zadane 30 maja 2021 w C i C++ przez Huberti Gaduła (4,500 p.)
0 głosów
1 odpowiedź 467 wizyt
–1 głos
1 odpowiedź 147 wizyt
pytanie zadane 12 sierpnia 2017 w C i C++ przez Artur Koniec Gaduła (3,670 p.)

92,566 zapytań

141,420 odpowiedzi

319,613 komentarzy

61,952 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...