Building on the fundamentals, this course explores more complex C++ features including arrays, strings, input/output operations, and functions. Learners will develop modular programming skills and learn to structure their code for reusability and maintainability. The course introduces GenAI tools for code generation to enhance productivity and provides practical experience with file handling and external libraries.

il reste 6 jours : Profitez d'un coup de pouce pour le Black Friday avec 160 $ de réduction sur plus de 10 000 programmes.


Intermediate C++ Programming Techniques
Ce cours fait partie de Microsoft Introduction to C++ Programming Certificat Professionnel

Instructeur : Microsoft
Inclus avec
Expérience recommandée
Ce que vous apprendrez
1. Write, debug, and compile C++ programs that solve real problems.
2. Apply modular and object-oriented programming principles.
Compétences que vous acquerrez
- Catégorie : Generative AI
- Catégorie : C++ (Programming Language)
- Catégorie : Data Structures
- Catégorie : Software Design
- Catégorie : Performance Tuning
- Catégorie : Maintainability
- Catégorie : Debugging
- Catégorie : Software Architecture
- Catégorie : API Design
- Catégorie : File Management
- Catégorie : Data Validation
Détails à connaître

Ajouter Ă votre profil LinkedIn
novembre 2025
Découvrez comment les employés des entreprises prestigieuses maîtrisent des compétences recherchées

Élaborez votre expertise en Algorithms
- Apprenez de nouveaux concepts auprès d'experts du secteur
- Acquérez une compréhension de base d'un sujet ou d'un outil
- Développez des compétences professionnelles avec des projets pratiques
- Obtenez un certificat professionnel partageable auprès de Microsoft

Il y a 5 modules dans ce cours
Arrays and String Manipulation enhances your C++ capabilities by teaching you to work with collections of data and process text through both legacy and modern approaches, emphasizing safety, performance, and best practices. You'll learn to declare and manipulate single and multi-dimensional arrays using both C-style arrays and modern std::array containers, implement common operations like sorting and searching algorithms, handle matrix-based computations for mathematical applications, and process text efficiently using std::string methods while understanding the security vulnerabilities and limitations of C-style strings. Through hands-on activities progressing from basic array operations to building comprehensive text analyzers and matrix manipulation programs, you'll develop skills in memory layout optimization, bounds checking, Unicode handling for international applications, and selecting appropriate data structures based on safety and performance trade-offs. These intermediate skills are essential for real-world development across diverse domains—from database management and scientific computing that rely on efficient array-based data processing, to game development requiring multi-dimensional coordinate systems and collision detection, to web applications and natural language processing tools that demand secure, efficient text manipulation—where your ability to handle collections of data safely, process text securely, and optimize memory usage directly impacts application performance, security, and reliability in professional software environments.
Inclus
6 vidéos5 lectures4 devoirs6 laboratoires non notés
Input/Output Operations expands your C++ expertise by teaching you to handle data flow between applications and external sources through console interfaces, file systems, and modern I/O techniques, transforming basic programs into production-ready systems. You'll learn to create professional console applications with advanced stream manipulators for formatting precision and alignment, implement robust input validation with comprehensive error handling, manage file operations for reading and writing both text and binary data using C++17's filesystem API, and leverage modern C++20/C++23 features including std::format and std::print for type-safe, simplified output operations. Through hands-on activities progressing from formatted report generators to data logger applications and comprehensive input validation systems, you'll develop skills in stream state management, error recovery strategies, complex data format parsing, and user interface design that balances functionality with accessibility. These I/O capabilities are fundamental for real-world applications across all domains—from system administration tools and backup systems that require reliable file handling, to data processing pipelines and business reporting applications demanding professional formatting and validation, to production systems processing structured data formats like CSV and JSON—where your ability to safely read external data, gracefully handle errors, persist information reliably, and present output professionally determines application robustness, data integrity, and user experience quality.
Inclus
6 vidéos4 lectures4 devoirs6 laboratoires non notés
Functions and Modular Programming transforms your approach to software development by teaching you to create reusable, maintainable code through function design, advanced function techniques, and systematic code organization strategies that enable scalable application architecture. You'll learn to design functions with optimal parameter passing methods for performance and clarity, implement function overloading to create versatile interfaces, apply recursion to solve algorithmic problems while comparing recursive and iterative approaches, and organize code using namespaces and modern C++20 modules to prevent naming conflicts and improve project structure. Through hands-on activities progressing from basic function creation to refactoring monolithic programs into modular architectures and implementing recursive algorithms with performance analysis, you'll develop skills in code reusability, interface design, stack frame analysis, separation of concerns, and architectural decision-making. These modular programming principles are essential for professional software development across all industries—from game development and web applications requiring team collaboration on shared codebases, to large enterprise systems demanding clear organizational hierarchies and conflict prevention, to API design where intuitive function interfaces determine developer experience—where your ability to eliminate code duplication, create maintainable function-based architectures, and organize complex projects systematically directly impacts development efficiency, team productivity, code quality, and long-term software maintainability in collaborative professional environments.
Inclus
6 vidéos4 lectures4 devoirs6 laboratoires non notés
External Libraries and GenAI for Code Generation elevates your development capabilities by teaching you to extend application functionality through third-party libraries and leverage modern AI coding assistants to accelerate development while maintaining professional quality standards. You'll learn to discover, evaluate, and integrate external C++ libraries using modern build systems, including CMake, vcpkg, and Conan for dependency management, understand static versus dynamic linking and proper header file organization, and effectively use AI tools like GitHub Copilot, ChatGPT, and Claude to generate code snippets, functions, and program components while critically evaluating their output. Through hands-on activities that progress from library integration projects to AI-assisted development workflows, you'll develop skills in building system configuration, dependency resolution, quality assurance for AI-generated code, code adaptation and refactoring, and establishing collaborative development practices that balance AI assistance with human expertise. These modern development capabilities are transformative for professional software engineering—from integrating powerful libraries for JSON parsing, HTTP communication, or graphics rendering that would take months to build independently, to using AI tools that accelerate routine coding tasks and reduce boilerplate while you maintain critical oversight for correctness and style—where your ability to leverage existing solutions, manage complex dependencies, critically evaluate AI assistance, and integrate modern tools into workflows directly impacts development velocity, project scope possibilities, code quality maintenance, and your competitiveness in contemporary software development environments that increasingly expect proficiency with both external libraries and AI-assisted coding practices.
Inclus
6 vidéos4 lectures4 devoirs6 laboratoires non notés
The Hands On Course Project synthesizes your intermediate C++ expertise through a comprehensive capstone experience where you design and build a sophisticated data processing application that integrates arrays and string manipulation, file I/O operations, modular function architecture, external library integration, and AI-assisted development workflows into a cohesive, professional-quality solution. You'll progress through industry-standard development phases—systematic design and planning with detailed architecture specifications and library selection, implementation, applying all intermediate concepts with modern AI assistance for code generation and optimization, and comprehensive testing, including unit tests, integration tests, and performance analysis with AI-powered code review. This capstone experience simulates real-world intermediate-level development scenarios found in business applications, scientific computing systems, and data analysis platforms where multiple technical skills must work together seamlessly to solve complex problems. The project culminates in professional deliverables including complete source code, technical documentation, testing reports, user guides, and an AI integration analysis that collectively demonstrate your readiness for advanced C++ programming challenges and intermediate-level professional software development roles, while providing portfolio-worthy evidence of your ability to independently design, implement, test, document, and optimize complete applications using modern development practices that balance human expertise with AI assistance for maximum productivity and code quality.
Inclus
1 vidéo3 lectures1 devoir1 laboratoire non noté
Obtenez un certificat professionnel
Ajoutez ce titre à votre profil LinkedIn, à votre curriculum vitae ou à votre CV. Partagez-le sur les médias sociaux et dans votre évaluation des performances.
En savoir plus sur Algorithms
Statut : Essai gratuitMicrosoft
Statut : Essai gratuit
Statut : Essai gratuit
Statut : Essai gratuit
Pour quelles raisons les étudiants sur Coursera nous choisissent-ils pour leur carrière ?





Ouvrez de nouvelles portes avec Coursera Plus
Accès illimité à 10,000+ cours de niveau international, projets pratiques et programmes de certification prêts à l'emploi - tous inclus dans votre abonnement.
Faites progresser votre carrière avec un diplôme en ligne
Obtenez un diplôme auprès d’universités de renommée mondiale - 100 % en ligne
Rejoignez plus de 3Â 400Â entreprises mondiales qui ont choisi Coursera pour les affaires
Améliorez les compétences de vos employés pour exceller dans l’économie numérique
Foire Aux Questions
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Certificate, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Plus de questions
Aide financière disponible,
¹ Certains travaux de ce cours sont notés par l'IA. Pour ces travaux, vos Données internes seront utilisées conformément à Notification de confidentialité de Coursera.

