Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Anda menyertakan konten header standar dengan memberi nama dalam direktif sertakan.
#include <iostream>// include I/O facilities
Anda dapat menyertakan header standar dalam urutan apa pun, header standar lebih dari sekali, atau dua atau lebih header standar yang menentukan makro yang sama atau jenis yang sama. Jangan sertakan header standar dalam deklarasi. Jangan tentukan makro yang memiliki nama yang sama dengan kata kunci sebelum Anda menyertakan header standar.
Header pustaka C++ menyertakan header pustaka C++ lainnya yang diperlukan untuk menentukan jenis yang diperlukan. (Selalu sertakan secara eksplisit header pustaka C++ yang diperlukan dalam unit terjemahan, namun, agar Anda tidak menebak salah tentang dependensi aktualnya.) Header C Standar tidak pernah menyertakan header standar lain. Header standar mendeklarasikan atau hanya menentukan entitas yang dijelaskan untuknya dalam dokumen ini.
Setiap fungsi dalam pustaka dideklarasikan dalam header standar. Tidak seperti di Standar C, header standar tidak pernah menyediakan makro masking dengan nama yang sama dengan fungsi yang menutupi deklarasi fungsi dan mencapai efek yang sama. Untuk informasi selengkapnya tentang menutupi makro, lihat Konvensi Pustaka C++.
Semua nama selain operator delete dan operator new di header pustaka C++ didefinisikan di std namespace, atau di namespace yang disarangkan dalam std namespace. Anda merujuk ke nama cin, misalnya, sebagai std::cin. Namun, perhatikan bahwa nama makro tidak tunduk pada kualifikasi namespace, sehingga Anda selalu menulis __STD_COMPLEX tanpa kualifikasi namespace.
Di beberapa lingkungan terjemahan, termasuk header pustaka C++ dapat mengaitkan nama eksternal yang dideklarasikan dalam std namespace layanan global juga, dengan deklarasi individual using untuk setiap nama. Jika tidak, header tidak* memperkenalkan nama pustaka apa pun ke dalam namespace saat ini.
Standar C++ mengharuskan header Standar C mendeklarasikan semua nama eksternal di namespace std, lalu menggiringnya ke dalam namespace global dengan deklarasi individual using untuk masing-masing nama. Tetapi di beberapa lingkungan terjemahan header Standar C tidak menyertakan deklarasi namespace layanan, mendeklarasikan semua nama langsung di namespace global. Dengan demikian, cara paling portabel untuk menangani namespace layanan adalah dengan mengikuti dua aturan:
Untuk mendeklarasikan dengan pasti di namespace
stdnama eksternal yang secara tradisional dideklarasikan dalam<stdlib.h>, misalnya, sertakan header<cstdlib>. Ketahuilah bahwa nama tersebut mungkin juga dideklarasikan di namespace layanan global.Untuk mendeklarasikan dengan yakin di namespace global nama eksternal yang dideklarasikan dalam
<stdlib.h>, sertakan header<stdlib.h>secara langsung. Ketahuilah bahwa nama tersebut mungkin juga dideklarasikan dalam namespacestdlayanan .
Dengan demikian, jika Anda ingin memanggil std::abort untuk menyebabkan penghentian abnormal, Anda harus menyertakan <cstdlib>. Jika Anda ingin memanggil abort, Anda harus menyertakan <stdlib.h>.
Atau, Anda dapat menulis deklarasi:
using namespace std;
yang membawa semua nama pustaka ke dalam namespace saat ini. Jika Anda menulis deklarasi ini segera setelah semua menyertakan direktif, Anda mengikat nama ke dalam namespace global. Anda kemudian dapat mengabaikan pertimbangan namespace layanan di sisa unit terjemahan. Anda juga menghindari sebagian besar perbedaan di berbagai lingkungan terjemahan.
Kecuali ditunjukkan secara khusus sebaliknya, Anda mungkin tidak menentukan nama di std namespace, atau di namespace yang ditumpuk dalam std namespace layanan, dalam program Anda.
Lihat juga
Gambaran Umum Pustaka Standar C++
Keamanan utas di Pustaka Standar C++