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

Różnice w pisaniu kodu w środowiskach Code Blocks i Visual Studio

0 głosów
148 wizyt
pytanie zadane 2 stycznia w Systemy operacyjne, programy przez Meeto93 Gaduła (3,560 p.)
Były już pytania jak naprawić takie błędy (na przykład ten o operatorze "<<" - trzeba było dodać bibliotekę <string>). Ale ja zastanawiam się - dlaczego tak się dzieje? W Code Blocks nie trzeba przykładowo używać biblioteki <string> czy "stdafx.h". Jest to dość uciążliwe. A przecież to ten sam kod - w jednym miejscu działa, w innym nie.

2 odpowiedzi

+1 głos
odpowiedź 2 stycznia przez Chess Pasjonat (17,950 p.)
To zależy od kompilatora jakiego użyjesz. Jeśli w C::B użyjesz MINGW, a w Visual XYZ to jeden compiler ci to skompiluje, bo ma to w standardzie, a drugi nie ma i odwrotnie.

http://cpp0x.pl/forum/temat/?id=20707
komentarz 2 stycznia przez Meeto93 Gaduła (3,560 p.)
A wiesz może jak to przełączyć? Zależy mi bardziej na przełączeniu na MINGW. Na temacie, który podałeś jest tylko coś o wersji kompilatora a zależnej od niego "odmianie" C++.
komentarz 2 stycznia przez Chess Pasjonat (17,950 p.)
+1 głos
odpowiedź 2 stycznia przez unknown Nałogowiec (30,020 p.)

W Code Blocks nie trzeba przykładowo używać biblioteki <string>

Niektóre implementacje iostream include'ują bibliotekę string, ale żeby kod był w pełni poprawny to wszędzie gdzie używasz std::string trzeba dodawać bibliotekę string.

czy "stdafx.h". Jest to dość uciążliwe.

W VS nie trzeba dodawać stdafx.h

komentarz 2 stycznia przez Meeto93 Gaduła (3,560 p.)
#include <iostream>

using namespace std;

int main()
{
	cout << "Hello World" << endl;
    return 0;
}

W takim prostym kodzie napisanym w Visual Studio 2015 wyskakuje komunikat: 


"Nieoczekiwany koniec pliku podczas wyszukiwania prekompilowanego nagłówka. Czy zapomniano dodać "#include "stdafx.h"" do twojego źródła?"

komentarz 2 stycznia przez unknown Nałogowiec (30,020 p.)

Twórz pusty projekt albo:

Select your project, use the "Project -> Properties" menu and go to the "Configuration Properties -> C/C++ -> Precompiled Headers" section, then change the "Precompiled Header" setting to "Not Using Precompiled Headers" option.

Podobne pytania

0 głosów
2 odpowiedzi 166 wizyt
pytanie zadane 5 listopada 2016 w C i C++ przez szerwi Użytkownik (600 p.)
0 głosów
1 odpowiedź 118 wizyt
0 głosów
2 odpowiedzi 287 wizyt
...