Jump to content

[Duvida] Diferença de 2 IDE's


Marevin
 Share

Recommended Posts

Antes de mais, boas.

Eu gostaria de saber porque é que no M.Visual C++ 2008 Express Edition, ao fazer-mos um novo projecto, temos este código:

//Exemplo.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

int _tmain(int argc, _TCHAR* argv[])
{
return 0;
}

enquanto que, no Code::Blocks, temos este (o qual compreendo)

#include <iostream>

using namespace std;

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

.

Eu sei que a include iostream contêm o "cout" e "cin" (input/output) e mais uns quantos.

Mas e a include stdafx.h têm a ver com o quê?

E porque é que a function main() sao diferentes nos dois?

Agradeço desde já.

Link to comment
Share on other sites

Não é bem culpa da IDE por si, é mais por causa do .NET...

Parece-me que o VS 2008 tem wizards para criar programas compatíveis com bibliotecas da Microsoft, tal como a WTL e a MFC, e com tecnologias como o .NET e a CLI, e usa o stdafx.h para pré-compilação parcial de código (que inclui também indirectamente as bibliotecas padrão). Por diversas razões, essas tecnologias utilizam convenções especiais para o ponto de entrada do código.

Se criares um projecto/solução vazio e escreveres o habitual código com int main() à mão, o compilador irá reconhecê-lo e compilá-lo sem qualquer problema.

Diga-se de passagem, se no próprio Code::Blocks iniciares um projecto de Win32 ou de uma DLL, também verás convenções diferentes de ponto de entrada.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.