Este módulo trata sobre el diseño y la herencia de clases. Introduciremos los conceptos de buen diseño de clases. Mostraremos la forma de usar la herencia para describir objetos del mundo real. También describirá diferentes tipos de herencia y cómo usarlos, pero también introducirá un concepto de composición que puede usarse para describir componentes del objeto de la vida real.
Objetivos de aprendizaje
- Aprenda los principios del buen diseño de clases
- Más información sobre la herencia
- Más información sobre la composición de la clase
Habilidades
- Aplicar buenos principios de diseño.
- Usar la herencia para describir objetos de la vida real
- Usando la composición de la clase
Habilidades que obtendrás
C++ (Lenguaje de programación)Fundamentos de CConceptos de CMódulos CMódulo de funcionesMódulos de softwareLo que aprenderás
- Distinguir valores L de valores R en C++
- Usar std::move para transferir recursos entre objetos
- Implementar un constructor de movimiento y un operador de asignación de movimiento
- Aplicar el idioma de copia-e-intercambio para una asignación segura
- Seguir la Regla de 3/5/0 al diseñar clases
Puntos clave
- El curso introduce la semántica de movimiento en C++ y explica qué es.
- Distingue entre valores L y valores R como parte de la comprensión de la semántica de movimiento.
- Cubre std::move, el constructor de movimiento y el operador de asignación de movimiento.
- Presenta el idioma de copia-e-intercambio y la Regla de 3/5/0.
Preguntas frecuentes
¿Qué temas cubre este curso de Semántica de Movimiento de C++?
Cubre qué es la semántica de movimiento, comprensión de valores L y valores R, usando std::move, el constructor de movimiento, el operador de asignación de movimiento, el idioma de copia-e-intercambio y la Regla de 3/5/0.
¿Con qué habilidades se relaciona este curso?
Se relaciona con C++ (Lenguaje de Programación), Fundamentos de C++, Conceptos de C++, Módulos de C++, Módulo de Función y Módulos de Software.
¿Cómo está estructurado el curso?
El curso está organizado en lecciones que cubren semántica de movimiento, valores L y valores R, std::move, el constructor de movimiento, el operador de asignación de movimiento, el idioma de copia-e-intercambio y la Regla de 3/5/0.
Transcripción
Transcripción
Empecemos a hablar sobre algo muy útil y muy importante para desarrolladores C plus plus. Hablemos de semántica de movimientos. ¿Qué es exactamente la semántica de movimientos? La semántica de movimiento es la capacidad de mover el contenido. de un objeto a otro objeto del mismo tipo o clase sin tener que copiarlo de un objeto a otro. Consideremos un ejemplo. Aquí construimos un objeto llamado cadena de prueba, una cadena llamada cadena de prueba y asígnela a una cadena llamada cadena de prueba dos, que hace una copia de la cadena en, una cadena de prueba de cadena, en la cadena de prueba dos, que es exactamente lo que vemos en la salida si decidimos construirlo. Así que construyémoslo. Constrúyalo y ejecútelo. Y vemos copiar la cadena de prueba y luego otra cadena de prueba. Pero si decidimos usar la semántica de movimiento para construir la cadena de prueba dos, la cadena original se destruye. En realidad, no lo es, en realidad está construido de tal manera que la cadena de prueba dos se apropie del contenido de la cadena de prueba. Dado que los datos se transfieren, la variable de la cadena de prueba ahora está vacía, o más precisamente no es válido. Aunque en este caso, en el caso de la cadena, todavía es accesible. Así que solo haré algunos cambios y lo demostraré. Entonces, para hacer la cadena de prueba dos usando lo que se conoce como un constructor de movimientos donde estamos moviendo el contenido de la cadena original a la nueva cadena, necesitamos usar la función llamado movimiento STD, pero hablaremos de ello más adelante en esta lección. Vamos a construirlo. Ejecútelo. Y como ves, tenemos un espacio que viene de aqui, pero el contenido de la cadena de prueba ahora no está disponible. El contenido de la cadena de prueba, que era una cadena de prueba, se han movido para probar la cadena dos. Más sobre cómo funciona la semántica de movimientos, pasemos a la siguiente sección.
Aprende sobre la marcha
Lleva tu aprendizaje a todas partes: la app de KnowledgeCity te permite ver las lecciones sobre la marcha.