Ikon aplikasi Belajar C++: Kod & Praktik

Belajar C++: Kod & Praktik

Pendidikan · Percuma · iOS & Android · CoddyKit

Belajar C++: Kod & Praktik — Tulis, kompil dan jalankan kod C++ dari telefon anda

Belajar C++: Kod & Praktik ialah aplikasi iOS dan Android percuma untuk pemula, pelajar sains komputer dan pembangun yang mahu belajar C++ dengan menulis kod sendiri. Editor terbina dalam menghantar kod anda kepada pengkompil GCC sebenar dan memaparkan output serta kod keluar, manakala AI Mentor menerangkan ralat pengkompil dalam bahasa yang mudah difahami. 51 kursus dan lebih 200 pelajaran ringkas membawa anda daripada cout pertama hingga classes, STL, move semantics dan C++20.

App Store — Muat turun percumaGoogle Play — Muat turun percuma
Harga
Percuma, naik taraf Pro
Platform
iOS dan Android
Bahasa
22
Penarafan umur
4+
Memerlukan
iOS 15.1 atau lebih baharu
App Store
4.9 ★ (7)
Skrin utama aplikasi C++ dalam antara muka bahasa Arab, dengan butang Mulakan pelajaran pertama, matlamat harian, kira detik World Coding Challenge serta pintasan Tanya Mentor dan Jana pelajaran andaTab Cabaran dalam antara muka bahasa Arab yang memaparkan World Coding Challenge, cabaran C++ daripada kursus aktif dan pilihan untuk menyertai menggunakan kod
51Kursus dan lebih 200 pelajaran
GCCPengkompil sebenar dalam editor
3/hariTiga tabiat latihan harian
Pointer hanya menakutkan sehingga pelajaran kedua belas.

C++ terkenal kerana sukar dipelajari, tetapi banyak persepsi itu datang daripada cara semuanya diajar serentak: ownership, heap, templates dan STL pada hari pertama. Dalam 51 kursus ringkas, bahan yang sama diperkenalkan sedikit demi sedikit, dan setiap idea diakhiri dengan kod yang anda kompil dan jalankan sendiri.

Apakah aplikasi ini

Belajar C++: Kod & Praktik ialah aplikasi iOS dan Android percuma yang mengajar C++ bermula daripada cout pertama hingga classes, STL, move semantics dan C++20 moden. Aplikasi ini mempunyai 51 kursus dan lebih 200 pelajaran ringkas yang dibahagikan kepada lima trek (asas, memori, objek, STL dan pembinaan program sebenar), editor yang mengompil kod menggunakan pengkompil GCC sebenar, 20 projek berpandu, 60 misi pengekodan serta AI Mentor dengan penterjemah ralat.

Dalam aplikasi

Rupa aplikasi ini

Skrin utama aplikasi C++ dalam antara muka bahasa Arab, dengan butang Mulakan pelajaran pertama, matlamat harian, kira detik World Coding Challenge serta pintasan Tanya Mentor dan Jana pelajaran anda
UtamaSkrin utama memaparkan kad kursus dengan butang mula, matlamat harian dan kira detik menuju pusingan World Coding Challenge seterusnya, bersama pintasan kepada AI Mentor dan penjanaan pelajaran. Tangkapan skrin ini menggunakan antara muka bahasa Arab.
Tab Cabaran dalam antara muka bahasa Arab yang memaparkan World Coding Challenge, cabaran C++ daripada kursus aktif dan pilihan untuk menyertai menggunakan kod
Tab CabaranTab Cabaran membuka World Coding Challenge, membolehkan anda memulakan perlawanan daripada kursus C++ aktif, menyemak imbas cabaran lain atau menyertai cabaran menggunakan kod.
Skrin profil dalam antara muka bahasa Arab dengan pengira rentetan harian, peta haba aktiviti selama 90 hari dan grid lencana pencapaian
Rentetan dan lencanaProfil menjejaki rentetan harian anda, peta haba aktiviti selama 90 hari dan lencana pencapaian, yang membantu memastikan sesi pendek dilakukan secara konsisten.
AI chat screen asking How can I help you, with suggested prompts to explain the key concepts, give tips, quiz you and create a learning roadmap
AI chatThe AI chat answers questions and starts from suggestions: explain the key concepts, share tips, quiz you or build a learning roadmap.
Learn C++ home screen with the C++ Academy course card, Start First Lesson, a daily goal ring, a Feature Request row and the Skill Hub
HomeThe home screen up close: the C++ Academy course card with Start First Lesson, a daily goal ring, a Feature Request row and the Skill Hub.

Kursus

Kandungan kursus C++

51 kursus daripada kurikulum tersendiri aplikasi, daripada program pertama yang dikompil hingga konkurensi tanpa kunci dan coroutine.

  1. Sintaks, String dan Aliran Kawalan

    Menyediakan compiler dan menjalankan program pertama, kemudian pemboleh ubah dan inferens jenis, std::string berbanding tatasusunan char gaya C, stream input dan output, serta corak aliran kawalan yang menjadi asas kepada semua kursus seterusnya.

  2. Struct, Vektor dan Projek Mini

    Pengenalan kepada struct dan class, bekerja dengan nombor dan matematik, vektor dan tatasusunan dinamik, penghantaran melalui rujukan, serta projek praktikal kecil yang menggabungkan semua asas tersebut.

  3. Memori, RAII dan Alternatif Lebih Selamat kepada Raw Pointer

    Model memori stack berbanding heap, RAII dan pengurusan sumber, pengendalian exception dan noexcept, ketepatan const, penggunaan pointer secara selamat, serta smart pointer sebagai pengganti moden kepada new dan delete manual.

  4. Jenis Moden, Container dan Reka Bentuk Berorientasikan Objek

    Enum, union dan std::variant, std::optional dan std::expected, std::string_view dan std::span, container bersekutu dan hashing unordered_map, pewarisan dan polimorfisme, serta operator overloading untuk jenis yang ditakrifkan pengguna.

  5. Build Tools, File I/O dan Standard Library

    Membina dengan CMake dan pengurusan pakej, file I/O dengan fstream, library chrono untuk masa, serta padanan corak dengan header regex — bahagian C++ yang menghubungkan kod dengan sistem fail dan jam.

  6. STL dan C++11 hingga C++20 Moden

    Meninjau perubahan daripada C++11 hingga C++20, move semantics dan rujukan rvalue, lambda dan std::function, algoritma STL, iterator dan range, serta debugging dengan sanitizer.

  7. Template, Prestasi dan Pengaturcaraan Sistem

    Primitif konkurensi, pengkhususan template dan SFINAE, template lanjutan dan metaprogramming, konsep C++20, pemprofilan prestasi, serta mereka bentuk API awam untuk sesuatu library.

  8. Konkurensi Lanjutan dan Coroutine

    Pengaturcaraan tanpa kunci dan atomic untuk keadaan apabila mutex terlalu perlahan, serta coroutine C++20, tambahan paling baharu kepada bahasa ini, yang diajar terakhir kerana semua topik sebelumnya menjadi prasyarat.

Cara ia berfungsi

Cara sesi C++ berfungsi

Setiap sesi menggabungkan pelajaran ringkas dengan kod yang anda jalankan, serta beberapa latihan harian untuk memastikan sintaks sentiasa segar.

  1. Baca satu pelajaran ringkas

    Buka kursus dan ikuti satu pelajaran tentang satu idea, seperti struct, reference atau smart pointer. Kursus pertama adalah percuma, jadi anda boleh melihat bagaimana pelajaran itu disampaikan sebelum membuat sebarang keputusan.

  2. Tulis, kompil dan jalankannya

    Taip kod dalam editor mudah alih dan jalankannya. Pengkompil GCC sebenar membinanya lalu memulangkan output dan kod keluar, manakala program yang membaca daripada cin mendapat tempat untuk menaip input. Oleh sebab pengkompil berada pada pelayan jauh, anda memerlukan sambungan untuk menjalankan kod.

  3. Kekalkan ketajaman dengan latihan harian dan AI Mentor

    Ramalkan output lima program ringkas, baiki satu program rosak dalam pemburuan pepijat harian, atau bermain Syntax Sprint selama 60 saat. Apabila ralat sukar difahami, tampalkannya ke dalam AI Mentor untuk mendapatkan penjelasan dalam satu ayat, bersama baris yang perlu dibaiki.

Kandungan

Kandungan aplikasi

51

Kursus dan lebih 200 pelajaran

Peta kursus membahagikan kursus kepada lima trek: asas, memori, objek, STL dan pembinaan program sebenar. Topik merangkumi variables dan streams, diikuti pointers, RAII dan templates, hingga CMake, concurrency dan coroutines.

GCC

Pengkompil sebenar dalam editor

Kod dibina oleh pengkompil GCC sebenar, bukan simulator. Anda dapat melihat output dan kod keluar, memberikan input kepada program yang membaca daripada cin, serta menjalankannya semula dengan satu ketikan. Setiap program yang anda jalankan disimpan.

3/hari

Tiga tabiat latihan harian

Ramalkan output (lima program ringkas sehari, jawab sebelum pengkompil menentukannya), pemburuan pepijat harian dengan petunjuk percuma, serta Syntax Sprint selama 60 saat yang mengandungi soalan dengan satu ketikan.

20

Projek berpandu

Bina program sebenar langkah demi langkah, seperti inventori, akaun bank, bentuk dengan polymorphism, stack template, kalkulator RPN, linked list dan state machine.

AI

AI Mentor dan penterjemah ralat

Tersekat pada pointer atau dinding ralat template? Tampal ralat tersebut dan dapatkan penjelasan dalam satu ayat, atau tanyakan apa sahaja kepada AI Mentor dalam bahasa biasa.

60

Misi dan cabaran dunia

60 misi pengekodan daripada mudah hingga sukar, satu masalah pengekodan baharu setiap hari dan World Coding Challenge, tiga pusingan global secara langsung sehari dengan papan pendahulu, serta streaks, XP dan peringatan.

Latar belakang

Mengapa C++ masih digunakan untuk menjalankan perisian yang tidak mampu berjalan perlahan?

C++ dikompil terus kepada kod mesin dan memberikan pengatur cara kawalan langsung terhadap memori, jadi tiada apa-apa yang menghalang kod daripada berhubung dengan perkakasan. Itulah sebabnya enjin permainan seperti Unreal, sistem dagangan frekuensi tinggi, firmware robotik dan banyak komponen sistem pengendalian masih ditulis dalam bahasa ini beberapa dekad selepas bahasa peringkat lebih tinggi muncul. Kawalan yang sama juga menyebabkan C++ terasa sukar pada awalnya: program C++ perlu menyatakan dengan jelas di mana sesuatu nilai disimpan dan siapa yang bertanggungjawab membebaskannya, sedangkan Python atau JavaScript melakukannya secara automatik tanpa kelihatan kepada anda.

Stack berbanding heapmodel memori

Memori stack dibebaskan secara automatik sebaik sahaja sesuatu fungsi kembali; memori heap kekal sehingga sesuatu melepaskannya secara jelas. Banyak pepijat yang dihadapi pemula, seperti dangling pointer, kebocoran atau ranap akibat menyentuh memori yang telah dibebaskan, berpunca daripada kekeliruan antara kedua-duanya.

RAIIjaring keselamatan C++ sendiri

Resource Acquisition Is Initialization mengikat jangka hayat sesuatu resource kepada constructor dan destructor objek, jadi resource itu dibebaskan secara automatik apabila objek tersebut keluar daripada skop. Smart pointers ialah RAII yang diterapkan pada memori, dan idiom ini menjadikan C++ moden jauh lebih selamat berbanding kod raw-pointer yang digantikannya.

STLkit alat di bawah bahasa ini

Standard Template Library menghimpunkan containers seperti vector, map dan unordered_map, bersama iterators dan algorithms yang sudah melaksanakan pengisihan, carian dan transformasi. Menggunakan STL dan bukannya membina linked list sendiri ialah titik apabila C++ mula tidak lagi terasa seperti kerja manual.

Templateskod yang berfungsi untuk apa-apa type

Template membolehkan satu function atau class berfungsi untuk apa-apa type yang boleh diselesaikan oleh pengkompil pada masa kompilasi, tanpa kos masa jalan. Inilah mekanisme di sebalik STL itu sendiri dan sebab library C++ boleh bersifat generik serta pantas.

Sesuai

Untuk siapa — dan bukan untuk siapa

Sesuai untuk anda jika anda

  • Mahukan bahagian sukar C++, pointer, heap dan template diperkenalkan satu demi satu, bukannya dalam satu manual yang padat
  • Merupakan pelajar sains komputer yang mengikuti kerja kursus yang mengandaikan anda sudah mengetahui STL dan struktur data asas
  • Sedang menuju ke bidang pembangunan game, embedded atau sistem dan memerlukan model memori benar-benar difahami
  • Datang daripada Python atau Java dan mahu memahami perkara yang berlaku dalam memori
  • Lebih rela menampal ralat compiler sebenar ke dalam AI Mentor daripada mencari mesej generik di forum

Bukan alat yang sesuai jika anda

  • Perlu menjalankan kod tanpa sambungan: program dikompil pada compiler GCC jauh
  • Memerlukan toolchain desktop lengkap sekarang, seperti projek CMake berbilang fail, library luaran yang besar dan debugger, yang lebih sesuai digunakan pada komputer
  • Mahukan kesemua 51 kursus secara percuma: kursus pertama dan set latihan harian adalah percuma, manakala Pro membuka selebihnya
  • Sudah bekerja secara profesional dalam C++ dan mahukan rujukan, bukannya kursus berurutan

Soalan

Soalan lazim

Apakah Belajar C++: Kod & Praktik?

Belajar C++: Kod & Praktik ialah aplikasi iOS dan Android percuma untuk mempelajari pengaturcaraan C++ melalui pelajaran pendek dan editor kod terbina dalam yang mengkompil pada compiler GCC sebenar. Aplikasi ini direka untuk pemula, pelajar sains komputer, pembangun game dan sistem, serta sesiapa sahaja yang membuat persediaan untuk kelas pengaturcaraan. Antara mukanya tersedia dalam 22 bahasa.

Adakah Belajar C++: Kod & Praktik percuma?

Aplikasi ini percuma untuk dimuat turun di App Store dan Google Play, serta percuma untuk dimulakan. Kursus pertama, set Predict the output harian, bug hunt harian, tiga pusingan Syntax Sprint sehari, projek berpandu pertama, dua misi, masalah coding harian, World Coding Challenge dan satu soalan AI Mentor sehari adalah percuma. Pro membuka setiap kursus, misi dan projek, Syntax Sprint tanpa had, semua alat AI, peperiksaan sijil dan pengalaman tanpa iklan.

Bolehkah saya mengkompil dan menjalankan C++ pada telefon, dan adakah ia berfungsi secara offline?

Ya, anda boleh menulis C++ dalam editor aplikasi dan menjalankannya daripada telefon. Compiler GCC sebenar akan membina kod serta mengembalikan output dan exit code, manakala program yang membaca daripada cin boleh menerima input yang ditaip. Oleh sebab compiler tersebut berada jauh, menjalankan kod memerlukan sambungan internet. Projek CMake berbilang fail yang besar lebih sesuai dibina pada komputer.

Untuk siapa aplikasi ini, dan apakah kandungannya?

Aplikasi ini sesuai untuk pemula yang mempelajari C++ sebagai bahasa pertama atau kedua, pelajar dalam kelas C++, pembangun game dan sistem, serta pembangun daripada Python atau Java yang mahu memahami memori. 51 kursusnya merangkumi pemboleh ubah, string, stream, aliran kawalan, struct dan class, vektor, rujukan, pointer, RAII, smart pointer, template, lambda, STL, file I/O, CMake, konkurensi dan coroutine.

Apakah Predict the output, Bug hunt dan Syntax Sprint?

Ketiga-tiganya ialah tiga amalan latihan C++ harian. Predict the output memberikan lima program pendek sehari dan meminta anda memberikan jawapan sebelum compiler menentukannya. Bug hunt memberikan satu program yang rosak setiap hari untuk anda baiki dan buktikan dengan compiler, bersama petunjuk percuma. Syntax Sprint ialah soalan sintaks satu ketikan selama 60 saat, dengan matlamat mengatasi skor terbaik anda.

Mengapakah pointer dan pembahagian stack berbanding heap terasa begitu sukar dalam C++?

Kebanyakan bahasa menentukan untuk anda di mana sesuatu nilai disimpan dan bila ia dibebaskan; C++ memerlukan anda menentukannya sendiri, dan itulah punca utama kesukarannya. Pointer hanyalah pemboleh ubah yang menyimpan alamat nilai lain, tetapi kekeliruan antara stack dan heap boleh menghasilkan pointer tergantung, kebocoran memori dan crash. Aplikasi ini mengajar model memori, RAII dan smart pointer sebagai kursus tersendiri.

Apakah RAII, dan mengapakah C++ moden mengutamakannya berbanding new dan delete manual?

RAII, Resource Acquisition Is Initialization, mengikat jangka hayat sesuatu sumber kepada constructor dan destructor objek, lalu sumber itu dilepaskan secara automatik apabila objek keluar daripada skop tanpa sebarang panggilan delete yang boleh terlupa. Smart pointer ialah penerapan RAII pada memori, dan beralih daripada new dan delete raw kepada smart pointer merupakan salah satu peningkatan keselamatan terbesar dalam C++ moden.

Patutkah saya mempelajari STL sebelum menulis struktur data sendiri?

Secara umumnya, ya. Standard Template Library sudah menyediakan vektor, map, set, iterator dan algoritma yang telah diuji, jadi anda belajar menggunakan std::sort sebelum menulisnya semula. Aplikasi ini tetap meminta anda membina linked list, template stack dan struktur lain dalam projek berpandu selepas asas dikuasai.

Adakah aplikasi ini membantu persediaan temu duga C++?

Aplikasi ini membantu dari segi latihan. Predict the output dan bug hunt melatih pembacaan kod yang teliti, kursus STL merangkumi container dan algoritma yang sering digunakan dalam temu duga, manakala projek berpandu seperti linked list, template stack dan kalkulator RPN melatih struktur lazim. Aplikasi ini ialah kursus, bukannya bank soalan temu duga khusus.

Adakah Learn C++: Code & Practice di App Store aplikasi yang sama?

Ya. Senarai App Store bertajuk Learn C++: Code & Practice, manakala senarai Google Play bertajuk Belajar C++: Kod & Praktik, tetapi kedua-duanya ialah aplikasi yang sama dengan 51 kursus yang sama. Sijil tamat kursus dikeluarkan selepas peperiksaan akhir; sijil itu merekodkan hasil kerja anda dan bukan kelayakan yang diiktiraf.

Mulakan

Kompil program C++ pertama anda hari ini

51 kursus, compiler GCC sebenar dan AI Mentor. Percuma untuk dimulakan pada iOS dan Android, dalam 22 bahasa.

App Store — Muat turun percumaGoogle Play — Muat turun percuma
Kali terakhir disemak · Diterbitkan oleh CoddyKit · Dasar privasi
Tersedia di iOS dan Android.