Funkcja main

Program w C++ musi posiadać funkcję main, w której wykonuje się główny kod programu. Domyślnie VS generuje tę funkcję o nazwie _tmain1. W rzeczywistości jest to makro, które w zależności od ustawień projektu – wstawia odpowiednią deklarację tej funkcji. Nic nie stoi na przeszkodzie aby zastąpić ją tradycyjną funkcją main – zgodnie ze standardem i przenośną między różnymi IDE.

Parametry programu

Pierwszy parametr argc oznacza ilość przekazanych argumentów. Drugi natomiast argv – tablicę tych argumentów. Możemy sobie wyobrazić, że chcemy napisać program, który ma być uniwersalny. Wtedy uruchamiamy program z parametrami, gdzie na ich podstawie wykonają się odpowiednie operacje.

Wynik funkcji

Zgodnie ze standardem funkcja main musi zwrócić wynik. Służy do tego słowo kluczowe return. Funkcja powinna zwrócić wartość 0 jeśli program wykonał się poprawnie. W przypadku zasygnalizowania wystąpienie błędu, inną odpowiednią wartością np. w przypadku podania nieprawidłowych danych wejściowych.

// 1.Structure.cpp : Defines the entry point for the console application.
//

#include  "stdafx.h"


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

Dołączanie bibliotek

Na początku programu określamy jakie pliki nagłówkowe mają być dołączane do projektu. Służy do tego słowo kluczowe include. W nawiasach ostrokątnych podaje się nazwę pliku nagłówkowego, który jest zlokalizowany w głównym katalogu biblioteki standardowej. Własne utworzone pliki w projekcie dołączamy poprzez znak cudzysłowie.

Podział plików

W ogólności, kody źródłowe programu w C++ możemy podzielić na pliki nagłówkowe o rozszerzeniu .h lub .hpp oraz na pliki z jej implementacją o rozszerzeniu .cpp. Taki podział wynika z tego, że dany kod jak np. własne typy lub funkcje z biblioteki standardowej możemy wykorzystać w wielu miejscach w projekcie. Wystarczy wtedy dołączyć plik nagłówkowy aby kompilator mógł rozpoznać, że dany typ istnieje i jest jego implementacja.

Utworzenie pliku nagłówkowego jest dobrowolne – można wszystko zawrzeć w jednym pliku cpp. Jednakże, kod należy porcjować na małe kawałki tak, aby był bardziej czytelny oraz można było go używać w wielu miejscach bez powtarzania tego samego kodu.

Pliki nagłówkowe

Pliki nagłówkowe zawierają2 deklaracje własnych typów i funkcji – bez ich implementacji. W przypadku wielokrotnego dołączania tego samego pliku nagłówkowego, należy na samym początku zdefiniować tzw. wartownika, który zapobiegnie wielokrotnemu dołączaniu tego samego kodu podczas procesu kompilacji. W przypadku VS jest odpowiednia dyrektywa pragma once.

W poniższym listingu zadeklarowałem funkcję, która przyjmuje dwa argumentu typu liczbowego oraz zwraca również wartość typu liczbowego. Dzięki takiej strukturze, gdziekolwiek w projekcie można wykorzystać tę funkcję dołączając plik nagłówkowy.

#pragma once

int fun(int, int);

Pliki z implementacją

W pliku cpp zawiera się implementację zadeklarowanych typów w pliku nagłówkowym. Czyli implementacja ciała klas, funkcji itd. Oraz główny blok programu jak np. funkcja main.

W poprzednim listingu została zadeklarowana funkcja fun. Teraz napiszemy jej implementację. Wynik funkcji to proste działanie arytmetyczne jakim jest dodawanie dwóch liczb.

#include "MyFun.h"

int fun(int a, int b)
{
	return a + b;
}

 


Objaśnienia

  1. W zależności od flagi _UNICODE zostanie wstawione wmain lub main
  2. Pliki nagłówkowe mogą zawierać również implementację. Tudzież funkcje inline lub szablony.

Podobne artykuły

Komentarze

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *