Notas de lectura de "C ++ Primer": instrucciones del capítulo 5

Autor: Ma Zhifeng
enlace: https: //zhuanlan.zhihu.com/p/23669058
Fuente: saber casi con
derechos de autor del autor. Para reimpresiones comerciales, comuníquese con el autor para obtener autorización. Para reimpresiones no comerciales, indique la fuente.

declaración:

  • El contenido del artículo se recopila y compila de "C ++ Primer Chinese Edition (5th Edition)", y los derechos de autor pertenecen al libro original.
  • El libro original tiene interpretaciones más detalladas y maravillosas, compre libros genuinos para aprender.
  • Este artículo es solo para aprendizaje y comunicación, cualquier forma de reimpresión está prohibida.
  • Oración simple
    • Declaración de expresión
    • Declaración vacía
    • Oración compuesta
  • Alcance de la declaración
  • Declaraciones condicionales
    • Si
    • cambiar
  • Declaración iterativa
    • mientras
    • para
    • Rango para
    • hacer mientras
  • Declaración de salto
    • romper
    • Seguir
    • ir
    • regreso
  • prueba de manejo de declaración y excepción
    • declaración de prueba
    • lanzar expresión
    • Clase de excepción

Declaración de expresión

Agregue un punto y coma al final de la expresión para convertirse en una declaración de expresión

El efecto es ejecutar la expresión y descartar el resultado de la evaluación.

Declaración vacía

Contiene solo un punto y coma

Si escribimos un punto y coma extra

int i = 0;;

En realidad, son dos oraciones y el siguiente punto y coma es una oración vacía.

Esta situación no tendrá ningún efecto, pero

while( i < 10 ) ;  
    ++i;

Las declaraciones vacías constituyen el cuerpo del ciclo while, lo que lleva a un ciclo sin fin

Declaración compuesta (bloque)

Sentencias y secuencias de declaraciones encerradas entre llaves, también llamadas bloques

El bloque no termina con punto y coma

Alcance de la declaración

Un bloque es un alcance

Las variables definidas en if, switch, while, for pertenecen al ámbito local

Declaraciones condicionales

MZF: Agregar más llaves hará las cosas mucho más fáciles

Si

si las declaraciones se pueden anidar

if(condition)  
    if(condition)  
        statement  
else  
    if(condition)  
        statement  
    else if(condition)  
        statement

Usaremos sangría para hacer coincidir if ... else. De hecho, si el número de if es mayor que else, se llama problema de else colgante . Else siempre coincide con el if no coincidente más cercano

Entonces, el primero más coincide con el si interno, y toda la oración se vuelve complicada y difícil de entender.

Agregar más tirantes facilitará las cosas

if(condition)  
{  
    if(condition)  
    {  
        //do something  
    }  
}  
else  
{  
    if(condition)  
    {  
        //do something  
    }  
    else if(condition)  
    {  
        //do something  
    }  
}

La declaración entre llaves tiene solo alcance de bloque, por lo que para el primero, el if interno es invisible, coincidirá con el primero, que es exactamente lo que queremos.

cambiar

La etiqueta del caso debe ser una expresión constante entera

Una forma de escribir sencilla y clara

switch( i ) 
{  
    case 0:  
        {  
            //do something 
        }  
        break;  
    case 1:  
        {  
            //do something  
        }  
        break;  
    case 2:  
        {  
            //do something  
        }  
        break;  
    default:  
        {  
            //do something  
        }  
        break;  
}

Si una etiqueta de caso coincide correctamente, todas las ramas de casos se ejecutarán secuencialmente desde la etiqueta, a menos que el proceso se interrumpa explícitamente

Así que agrega más llaves y rompe , el evento se volverá simple

Declaración iterativa

  • mientras
  • para
  • Rango para
  • hacer mientras

Todos estamos familiarizados con estas oraciones, solo lea el libro nuevamente

El encabezado de la instrucción for puede omitir cualquiera (o todas) de la instrucción init, condición y expresión

La instrucción do while ejecuta primero el cuerpo del bucle y luego verifica la condición, por lo que no importa si la condición es verdadera, el cuerpo del bucle se ejecutará al menos una vez

Tenga en cuenta que si bien no termina con llaves, debe ir seguido de un punto y coma

do  
    statement  
while(condition);

Declaración de salto

  • break es responsable de terminar la declaración while, do while, for o switch más cercana
  • continuar termina la iteración actual e inmediatamente comienza la siguiente iteración
  • Solo cuando el conmutador está anidado dentro de la declaración de iteración, puede usar continue en el conmutador
  • No use instrucciones goto en el programa

prueba de manejo de declaración y excepción

Anormal se refiere al comportamiento anormal del programa cuando se está ejecutando. Estos comportamientos están más allá del alcance de la función normal de la función y, a veces, más allá de las expectativas del programador.

En circunstancias normales, una excepción provocará la terminación de todo el programa.

Puede usar try block para manejar excepciones.

El bloque de instrucción try comienza con la palabra clave try y termina con una o más cláusulas catch

Las excepciones lanzadas en el bloque try tienen la posibilidad de ser manejadas por la cláusula catch

Nuestros programadores también pueden lanzar excepciones de forma activa. Por ejemplo, cuando se desconecta la conexión de la base de datos en el programa de detección, podemos lanzar excepciones para notificar a otras partes del programa para su procesamiento.

Usa la expresión throw para lanzar una excepción

Para completar el manejo de excepciones, además del bloque de sentencias try y la expresión throw, también necesitamos una clase de excepción, que es responsable de llevar información específica sobre la excepción.

La biblioteca estándar define algunas clases de excepción, pero en la mayoría de los casos necesitamos personalizar nuestras propias clases de excepción

Supongo que te gusta

Origin blog.csdn.net/qq_26751117/article/details/53175593
Recomendado
Clasificación