Это очень странно, учитывая этот код:Выполнение станд :: соиЬ не печатает в рабочем режиме, но происходит в режиме отладки
#include <iostream>
#include "DummySubject.h"
#include "Shop.h"
int main(int argc, char* argv[])
{
std::cout << "1234567" << std::endl;
// more code
return 0;
}
Этот код не печатает ничего на консоли, когда я исполняю он работает в режиме работы, однако, когда я выполняю его в режиме отладки, cout
печатает 1234567
на экране.
Любая идея, в чем проблема?
Я даже использовал std::flush
, но это не помогло.
Edit:
Без включает в себя:
#include <iostream>
//#include "DummySubject.h"
//#include "Shop.h"
int main(int argc, char* argv[])
{
std::cout << "1234567" << std::endl;
// DummySubject mySubject;
//
// // We have four shops wanting to keep updated price set by mySubject owner
// Shop shop1("Shop 1");
// Shop shop2("Shop 2");
//
// mySubject.Attach(&shop1);
// mySubject.Attach(&shop2);
//
// //Now lets try changing the products price, this should update the shops automatically
// mySubject.ChangePrice(23.0f);
//
// //Now shop2 is not interested in new prices so they unsubscribe
// mySubject.Detach(&shop2);
//
// //Now lets try changing the products price again
// mySubject.ChangePrice(26.0f);
return 0;
}
Тем не менее не работает.
Если вы отбросите эти два варианта после того, как 'iostream' работает, то? –
Убедитесь, что «DummySubject.h» или «Shop.h» делают что-то странное. – 101010
@TommyA: Не помогло, проверьте измененный код, спасибо. – ron