Saya menggunakan C dan struct
s di mana sebuah struct dapat memiliki anggota tetapi tidak berfungsi. Asumsikan untuk kesederhanaan bahwa saya ingin membuat struct untuk string yang saya beri nama str
dan saya ingin dapat melakukan di str.replace(int i, char c)
mana i
indeks string dan c
karakter untuk menggantikan karakter di posisi i
. Apakah ini tidak pernah mungkin karena struct tidak dapat memiliki fungsi atau masih ada beberapa cara kita dapat menerapkan perilaku ini dan meniru bahwa struct dapat memiliki fungsi (sederhana) yang sebenarnya hanya struct menyalin sendiri ke struct baru dan memperbarui nya bidang, yang bisa dilakukan?
Jadi replace
bisa menjadi anggota ketiga dari struct yang menunjuk ke sebuah struct baru yang diperbarui ketika diakses atau serupa. Bisakah itu dilakukan? Atau adakah sesuatu yang dibangun di dalam teori atau paradigma yang menghalangi niat saya?
Latar belakangnya adalah saya sedang menulis kode C dan saya menemukan kembali fungsi-fungsi yang saya tahu adalah library builtin dalam bahasa OOP dan bahwa OOP akan menjadi cara yang baik untuk memanipulasi string dan perintah.
str.replace(&str, i, c)
itu. C ++ mengotomatiskan lewat dari this
pointer, tentu saja.