Mmejọ ndị a na-emekarị na mmemme C++ na otu esi edozi ha

Mmejọ Ndị A Na-emekarị na Mmemme C++ na Otu esi edozi ha

Mmemme C++ bụ otu n'ime asụsụ mmemme kachasị ike ma dị mfe ịgbanwe agbanwe. Site n'ike ya ịkwado mmemme usoro, nke dabere na ihe, na nke izugbe, a na-eji C++ eme ihe n'ọtụtụ ngwa dị iche iche, site na sistemụ arụmọrụ ruo na ngwa egwuregwu dị elu. Agbanyeghị, dịka asụsụ mmemme ọ bụla, C++ nwekwara ọtụtụ njehie ndị mmepe, ma ndị ọhụrụ ma ndị nwere ahụmịhe, na-ezutekarị. Isiokwu a ga-atụle ụfọdụ njehie a na-ahụkarị na mmemme C++ ma nye nduzi maka otu esi edozi ha.

1. Iji ihe ntụaka ndị a na-akpọghị aha

Njehie:
Ihe ntụaka a na-anaghị amalite nwere ike igosi ebe nchekwa amaghị, nke na-akpata omume a na-atụghị anya ya ma ọ bụ nsogbu mmemme. Ihe atụ nke njehie a bụ ndị a:

"cpp
int ptr; // ptr abụghị mmalite
ptr = 10; // Njehie: ebidoghị ihe ntụaka
““

Otu esi edozi ya:
Malite ihe ntụaka tupu i jiri ya. I nwere ike iji `nullptr` ma ọ bụ adreesị ebe nchekwa dị irè malite ya.

"cpp
int ptr = nullptr; // Malite ya na nullptr
uru int = 10;
ptr = &uru;
ptr = 20; // Ugbu a dị nchebe
““

2. Njehie na Njikwa Ebe Nchekwa (Mgbapụta Ebe Nchekwa)

Njehie:
Mgbapụta ebe nchekwa na-eme mgbe ebe nchekwa ekenyereghị ọzọ. Nke a nwere ike ime ka ngwa jiri ebe nchekwa ka oge na-aga, nke na-eduga na ụkọ ebe nchekwa.

"cpp
int ptr = int ọhụrụ[10];
// Echefu ihichapụ ebe nchekwa ekenyere
““

Otu esi edozi ya:
Na-agba mbọ mgbe niile ka ị na-ewepụ ebe nchekwa e kenyere site na iji 'hichapụ' ma ọ bụ 'hichapụ[]' dabere na ihe ejiri kenye ya.

"cpp
int ptr = int ọhụrụ[10];
// Ojiji ebe nchekwa…
hichapụ[] ptr; // Ebe nchekwa ekenyela n'efu
““

Jiri ọbá akwụkwọ smart pointers (dịka `std::unique_ptr` ma ọ bụ `std::shared_ptr`) iji mee ka njikwa ebe nchekwa dịkwuo mfe.

"cpp
agụnye

std :: pụrụ iche_ptr ptr(int ọhụrụ[10]);
// A ga-ewepụta ebe nchekwa na akpaghị aka mgbe ptr si na scope pụọ
““

3. Mmejọ n'iji ntụaka eme ihe

Njehie:
Iweghachi ntụaka ma ọ bụ ntụaka na mgbanwe mpaghara nke gafere oke nwere ike ibute omume a na-atụghị anya ya.

"cpp
ntụaka int&getReference() {
uru int = 10;
uru nloghachi; // Njehie: iweghachi ntụaka na mgbanwe mpaghara
}
““

Otu esi edozi ya:
Zere ịlaghachi ihe ndị e kwuru na mgbanwe mpaghara. Kama, jiri mgbanwe ndị na-anaghị agbanwe agbanwe, ma ọ bụ nke ka mma, weghachite ụkpụrụ, ma ọ bụ tụlee iji ihe.

"cpp
int getValue() {
uru int = 10;
uru nloghachi; // Nchekwa karịa
}
““

4. Kwụsị Ozi na Ịdọ Aka Ná Ntị Maka Mmejọ Nchịkọta

Njehie:
Ndị mmemme na-elegharakarị ozi njehie na ịdọ aka ná ntị nke onye nchịkọta akụkọ na-enye anya, ọ bụ ezie na ozi ndị a na-enye ozi dị mkpa gbasara mmejọ ndị nwere ike ime.

Otu esi edozi ya:
Na-elele ma ghọta ozi njehie na ịdọ aka ná ntị nke onye nchịkọta akụkọ mepụtara mgbe niile. Mee ka ịdọ aka ná ntị dị elu rụọ ọrụ iji hụ na koodu dị ọcha.

Dịka ọmụmaatụ na GCC, jiri ọkọlọtọ `-Wall` mepụta ịdọ aka ná ntị ndị ọzọ.

"'bash
mmemme g++ -Mgbidi -o main.cpp
““

5. Njehie dị na ibufe oke ọrụ

Njehie:
Ịrụ ọrụ na-ezighi ezi nwere ike ibute omume a na-atụghị anya ya ma ọ bụ njehie n'oge ọrụ.

"cpp
klas MyClass {
ọha:
data int;
Onye ọrụ MyClass+ (const MyClass na ndị ọzọ) {
weghachite data + data ndị ọzọ; // Njehie: kwesịrị ịweghachi MyClass
}
};
““

Otu esi edozi ya:
Jide n'aka na onye ọrụ ahụ ejiri oke ibu weghachite ụdị kwesịrị ekwesị ma chekwaa ihe ndị na-adịghị agbanwe agbanwe nke klas ahụ.

"cpp
klas MyClass {
ọha:
data int;
Onye ọrụ MyClass+ (const MyClass na ndị ọzọ) {
Nsonaazụ MyClass;
nsonaazụ.data = data + data ndị ọzọ;
weghachite nsonaazụ; // Weghachite ihe site na MyClass
}
};
““

6. Iji Macros eme ihe n'ụzọ na-ezighị ezi

Njehie:
Mgbe ụfọdụ, a na-eji makros eme ihe gabiga ókè ma ọ bụ na-ezighi ezi, nke nwere ike ibute njehie ndị siri ike ịchọpụta n'oge ọrụ.

"cpp
kọwaa SQUARE(x) xx

nsonaazụ int = SQUARE(5 + 1); // Njehie: nsonaazụ ya bụ 5 + 1 5 + 1
““

Otu esi edozi ya:
Jiri okwu ma ọ bụ ndebiri na-agbanwe agbanwe dochie macros maka nchekwa na njikwa ụdị ka mma.

"cpp
template
Ákwà T (T x) {
weghachite xx;
}

nsonaazụ int = square(5 + 1); // Nchekwa iji
““

7. Iji ọrụ ụdị C eme ihe n'ụzọ na-ezighị ezi

Njehie:
Iji ọrụ ụdị C dị ka `strcpy` ma ọ bụ `sprintf` nke na-adịghị mfe ịnweta mmiri nchekwa.

"cpp
char src[] = "Ndewo, Ụwa!";
akara njedebe[5];
strcpy(dest, src); // Njehie: ihe nchekwa juru eju
““

Otu esi edozi ya:
Jiri ọrụ C++ dị nchebe dịka `std::string` maọbụ `std::vector`.

"cpp
agụnye
std::string src = “Ndewo, Ụwa!”;
std::string dest = src;
““

8. Ileghara Nchọpụta Njehie Anya

Njehie:
Lelee njehie na ọrụ I/O ma ọ bụ ọrụ ndị nwere ike ịda ada.

"cpp
faịlụ std::ifstream(“data.txt”);
// Njehie: eleleghị ma emepeela faịlụ ahụ nke ọma
““

Otu esi edozi ya:
Na-enyocha ma ọrụ ahụ ọ gara nke ọma ma na-ejikwa mmejọ nke ọma.

"cpp
faịlụ std::ifstream(“data.txt”);
ọ bụrụ na (faịlụ!) {
std::cerr << "Emepeghị faịlụ" << std::endl; weghachite 1; } ```` 9. Mmebi nke Suboptimal Loop: Iji loop suboptimal nwere ike ibute mbelata na arụmọrụ mmemme. ```cpp maka (int i = 0; i < vec.size(); i++) { // Usoro na vec[i] // A na-akpọ njehie: size() na ntụgharị ọ bụla } ``` Dozie: Mee ka loop ahụ ka mma site na ibelata oku ọrụ ugboro ugboro. ```cpp maka (std::size_t i = 0, n = vec.size(); i < n; i++) { // Usoro na vec[i] } ``` Jiri algọridim STL dị ka `std::for_each` mee ihe maka njikarịcha ọzọ. ```cpp gụnyere
std::for_each(vec.begin(), vec.end(), [](int &value) {
// Usoro nwere uru
});
““

10. Njehie dị na njikwa eriri

Njehie:
Ịghara ime ihe n'ụzọ na-ezighị ezi nwere ike ibute ọnọdụ agbụrụ ma ọ bụ ihe mgbochi.

"cpp
agụnye ọsọ efu() {
// Njehie: Ọnọdụ agbụrụ nwere ike ime
}

std::thread t1 (ọsọ);
std::thread t2 (ọsọ);
““

Otu esi edozi ya:
Jiri ihe ndị dị mkpa dịka mutexes iji gbochie ọnọdụ agbụrụ na njedebe.

"cpp
agụnye agụnye

std::mutex mtx;

ọsọ efu() {
std::nchekwa_mkpọchi mkpọchi (mtx);
// Usoro dị nchebe pụọ na ọnọdụ agbụrụ
}

std::thread t1 (ọsọ);
std::thread t2 (ọsọ);

t1.njikọ();
t2.njikọ();
““

Mmechi

C++ bụ asụsụ mmemme dị ike ma dị mfe ịgbanwe agbanwe, mana ọ na-enwekarị mmejọ ndị a na-ahụkarị, ọkachasị ndị metụtara njikwa ebe nchekwa na njikwa ihe ntụaka. Site n'ịghọta mmejọ ndị a na ịmara otu esi edozi ha, ị nwere ike ịmepụta ngwa ndị a pụrụ ịtụkwasị obi ma dị irè karị. Cheta na ị na-elebara ozi nchịkọta anya mgbe niile, jiri ngwaọrụ ọgbara ọhụrụ na-enyere gị aka ide koodu nchekwa, ma na-eme ka nkà gị dịkwuo mma n'ịghọta na itinye usoro mmemme C++ kacha mma.

Hapụ okwu