Class String pada C++
322
Direktorat Pembinaan SMK| 2008
int main {
string ucapan; string nama
suprapto ;
ucapan = Halo
; cout ucapan nama endl;
getch; return
; }
Keluaran program diatas adalah sebagai berikut: Halo
suprapto Supaya dapat membuah program
selain contoh program diatas, perhatikan tabel pemakaian
konsruktor string yang diberikan dalam tabel dibawah ini:
Tabel 8.5. Pemakaian Konsruktor String DEFINITION
DESCRIPTION string
alamat; Definisi
objek string yang langsung disebutkan string
namasuprapto; Mendefinisikan
string benda bernama nama, diinisialisasi
dengan suprapto string
person1person2; Mendefinisikan
string benda bernama person1, yang merupakan
salinan dari person2. person2 mungkin salah satu
objek atau string karakter array. string
set1set2, 5; Mendefinisikan
string bernama set1 objek yang diinisialisasi
untuk pertama lima karakter dalam karakter
array set2. string
lineFullz, 10; Mendefinisikan
string benda bernama lineFull diinisialisasi
dengan 10 z karakter. string
firstNamefullName, 0,
7; Mendefinisikan
string benda bernama firstname, diinisialisasi
dengan substring dari string fullName. Substring
adalah tujuh karakter, mulai pada posisi 0. Hal yang perlu diketahi pada program
dibawah, menggunakan operator = untuk memberi nilai obyek string.
class string memberi muatan lebih pada beberapa operator, yang
digambarkan pada Tabel dibawah.
2008 | Direktorat Pembinaan SMK
323 Tabel 8.6. Operator String
OVERLOADED PENJELASAN
OPERATOR
Ekstrak karakter stream dan masukkan karakter ke dalam string.
Karakter akan dicopy sampai menemui spasi atau akhir kalimat
dan sekaligus menhitung karakter masukan.
Menyisipkan string ke dalam stream.
= Memasukan
string pada sebelah kanan ke obyek string pada sebelah
kiri.
+= Menambahkan
copyan string pada string sebelah kanan ke obyek
string pada sebelah kiri.
+
Mengembalikan string yang merupakan rangkaian dari dua
operand string
[] Melaksanakan
tanda notasi array, seperti nama [x]. dimana hal tersebut
merujuk pada karakter pada pengembalian posisi x.
Relational Operators
Masing ‐masing operator penghubung diimplementasikan: =
= == =
Program dibawah digunakan untuk mendemontrasikan sebagian dari
operator string Program 8.18
include iostream
include string
using namespace std; int main
{
string str1, str2, str3; str1 =
ABC ;
str2 = DEF
; str3 = str1 + str2;
cout str1 endl; cout str2 endl;
cout str3 endl; str3 +=
GHI ;
cout str3 endl; return
; }
Keluaran program tersebut diatas adalah sebagai berikut:
ABC
DEF ABCDEF
ABCDEFGHI Class string juga mempunyai
beberapa fungsi anggota. Sebagai contoh, fungsi size mengembalikan
panjang string. Hal tersebut didemontrasikan dalam pengulangan
For pada program dibawah ini:
324
Direktorat Pembinaan SMK| 2008
Program 8.19 includeconio.h
include iostream
include string
using namespace std; int main
{ string str1, str2, str3;
str1 =
ABC ;
str2 = DEF
; str3 = str1 + str2;
for int x =
; x str3.size; x++
cout str3[x]; cout endl;
if str1 str2 cout
str1 adalah lebih kecil daripada str2\n
;
else cout
str1 tidak lebih kecil daripada str2\n
; getch;
return
; }
Keluaran program diatas adalah sebagai berikut: ABCDEF
str1 adalah lebih kecil daripada str2
Tabel dibawah ini merupakan daftar dari banyak string yang merupakan anggota class string variasi yang dibebankan.
Tabel 8.7. Class String Keanggotaan Fungsi
ANGGOTA FUNGSI
PENJELASAN
theString.appendstr; Menambahkan
str ke theString. str bisa menjadi objek atau
string karakter array. theString.appendstr,
x, n; n
jumlah karakter dari str, dimulai pada posisi x, akan ditambahkan
ke theString. jika TheString terlalu kecil, fungsi
akan melakukan copy sejumlah karakter yang mungkin
bisa dicopy.
2008 | Direktorat Pembinaan SMK
325 theString.appendstr,
n; N
karakter pertama dari array karakter str yang ditambahkan
ke theString. theString.appendn,
z; N
menambahkan salinan z untuk theString. theString.assignstr;
Memberikan str ke theString. Parameter str dapat
menjadi obyek string atau C‐string.
theString.assignstr, x, n;
jumlah n karakter dari str, dimulai pada posisi x, ditugaskan
ke theString. jika TheString terlalu kecil, fungsi
akan menyalin banyak karakter mungkin. theString.assignstr,
n; karakter
pertama n dari array karakter str ditugaskan ke
theString. theString.assignn,
z; Memberikan
salinan n z menuju theString. theString.atx;
Mengembalikan karakter pada posisi x dalam string.
theString.begin; Kembali
pada sebuah iterator yang menunjuk ke karakter
pertama pada string. theString.capacity;
Mengembalikan ukuran penyimpanan dialokasikan
untuk string.
theString.clear; Membersihkan
string dengan menghapus semua karakter
yang disimpan di dalamnya. theString.comparestr;
Melakukan perbandingan seperti fungsi strcmp
dengan nilai yang sama kembali. str bisa menjadi
string objek atau karakter array.
theString.comparex, n, str; Membandingkan theString dan str, mulai dari posisi x,
dan dilanjutkan terus untuk n karakter. pengembalian
nilai seperti strcmp. str bisa menjadi objek string atau
karakter array.
theString.copystr, x, n;
menyalin karakter str ke array theString, mulai pada
posisi x, untuk n karakter. TheString jika terlalu kecil,
maka fungsi akan menyalin karakter semampu
mungkin. theString.c_str:
Mengembalikan nilai C‐string string objek.
theString.data; Kembali
karakter array yang berisi null string dihentikan,
karena disimpan dalam theString. theString.empty;
Returns true jika theString kosong.
Returns true if theString is empty.
theString.end; Kembali
ke sebuah iterator yang terakhir karakter dari string
di theString. Untuk informasi lebih lanjut tentang
iterators, lihat Bab 15. Returns
an iterator pointing to the last character of the
string in theString. For more information on iterators,
see Chapter 15. theString.erasex,
n; Erases
n karakter dari theString, mulai di posisi x.
326
Direktorat Pembinaan SMK| 2008
Erases n characters from theString, beginning at
position x.
theString.findstr, x;
Kembali posisi pertama di luar atau di mana posisi x
string str ditemukan di theString. Parameter str
mungkin salah satu objek string atau C‐string. Str jika
tidak ditemukan, posisi diluar akhir theString
dikembalikan. Returns
the first position at or beyond position x where
the string str is found in theString. The parameter
str may be either a string object or a C‐ string.
If str is not found, a position beyond the end of theString
is returned. theString.findz,
x; Kembali
posisi pertama di luar atau di mana posisi x z yang
ditemukan di theString. Returns
the first position at or beyond position x where
z is found in theString. theString.insertx,
str; Menyisipkan
salinan str ke theString, mulai di posisi x. str
mungkin salah satu objek atau string karakter array.
Inserts a copy of str into theString, beginning at
position x. str may be either a string object or a
character array.
theString.insertx, n, z;
Menyisipkan z n kali menuju theString di posisi x.
theString.length; Pernyataan
panjang string di theString. Returns
the length of the string in theString. theString.replacex,
n, str; Menggantikan
n karakter di awal theString di posisi x dengan
karakter dalam string str objek. Replaces
the n characters in theString beginning at position
x with the characters in string object str. theString.resizen,
z; Perubahan
besarnya alokasi di theString ke n. N kurang
jika dibandingkan dengan ukuran string, string yang
dipotong untuk
n karakter. Jika n lebih besar, string yang diperluas
dan z yang ditambahkan pada akhir waktu yang
cukup untuk mengisi ruang‐ruang baru. Changes
the size of the allocation in theString to n. If n
2008 | Direktorat Pembinaan SMK
327 is
less than the current size of the string, the string is truncated
to n characters. If n is greater, the string is expanded
and z is appended at the end enough times to fill the
new spaces.
theString.size; Pernyataan
panjang string pada theString. theString.substrx,
n; Kembali
melakukan salinan suatu substring. The substring
adalah n karakter dan mulai pada posisi x dari
theString. theString.swapstr;
Swaps isi dengan theString str.