Web - Amazon

We provide Linux to the World


We support WINRAR [What is this] - [Download .exe file(s) for Windows]

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
CPP - Wikipedia, wolna encyklopedia

CPP

Z Wikipedii

cpp (C Preprocessor) to standardowy preprocesor dla języków C i C++.

CPP udostępnia jedynie bardzo prostą funkcjonalność i w żaden sposób nie rozpoznaje składni języka przetwarzanego tekstu.

Ważniejsze funkcje to:

  • Zdefiniuj stałą:
#define X Y
  • Zdefiniuj makro:
#define X(argument) rozwinięcie
  • Skasuj definicję:
#undef X
  • Włącz plik (poszukiwany wg ścieżki standardowej, zdefiniowanej w konfiguracji programu cpp):
#include <stdlib.h>
  • Włącz plik (poszukiwany wg ścieżki dodatkowej, definiowanej przez użytkownika):
#include "foo.h"
  • Kompilacja warunkowa
#if warunek
  Kod jeśli warunek jest spełniony
#else
  Kod jeśli warunek nie jest spełnione
#endif

W języku C bardzo wiele ważnej funkcjonalności zależy od preprocesora. Użycie preprocesora jest jednak źródłem wielu problemów i pomyłek programistycznych. Poza szczególnymi przypadkami nie jest on też zintegrowany z językiem.

Z tego powodu w języku C++ dodano wiele funkcjonalności mającej na celu zastąpienie preprocesora. Część tej funkcjonalności została potem dodana również do języka C.

Są to między innymi:

  • Deklaracje stałych (poprzez słowo kluczowe języka const zamiast dyrektywy preprocesora #define) (również w C):
const int foo = 5;
  • Funkcje rozwijane (inline) zamiast makr (również w C):
inline int abs(int x) {
  if(x>0)
    return x;
  else
    return -x;
}
  • Szablony (tylko C++):
template<class T> swap(T &x, T &y) {
  T tmp;
  tmp=x;
  x=y;
  y=tmp;
}

Nadal jednak konieczne jest użycie preprocesora do włączania nagłówków bibliotek oraz do kompilacji warunkowej.

Our "Network":

Project Gutenberg
https://gutenberg.classicistranieri.com

Encyclopaedia Britannica 1911
https://encyclopaediabritannica.classicistranieri.com

Librivox Audiobooks
https://librivox.classicistranieri.com

Linux Distributions
https://old.classicistranieri.com

Magnatune (MP3 Music)
https://magnatune.classicistranieri.com

Static Wikipedia (June 2008)
https://wikipedia.classicistranieri.com

Static Wikipedia (March 2008)
https://wikipedia2007.classicistranieri.com/mar2008/

Static Wikipedia (2007)
https://wikipedia2007.classicistranieri.com

Static Wikipedia (2006)
https://wikipedia2006.classicistranieri.com

Liber Liber
https://liberliber.classicistranieri.com

ZIM Files for Kiwix
https://zim.classicistranieri.com


Other Websites:

Bach - Goldberg Variations
https://www.goldbergvariations.org

Lazarillo de Tormes
https://www.lazarillodetormes.org

Madame Bovary
https://www.madamebovary.org

Il Fu Mattia Pascal
https://www.mattiapascal.it

The Voice in the Desert
https://www.thevoiceinthedesert.org

Confessione d'un amore fascista
https://www.amorefascista.it

Malinverno
https://www.malinverno.org

Debito formativo
https://www.debitoformativo.it

Adina Spire
https://www.adinaspire.com