# data[].attributes.headline
¿Por qué es importante elegir el tipo de dato adecuado al declarar una variable en C++?

# data[].attributes.subject
¿Por qué es importante elegir el tipo de dato adecuado al declarar una variable en C++?

# data[].attributes.body
Es importante elegir el tipo de dato adecuado al momento de declarar una variable, porque cada tipo de dato almacena cierta cantidad de información en específco, por ejemplo si queremos usar solo números enteros se debería usar el "int", ya que si usamos el "double", sería un desperdicio de memoria, dado que el "double" se usa más para tener números exactos y usando decimales. También si queremos usar una cadena de palabras usar el "string" que nos permite el uso del espacio, a usar el "char" que solo se fijaría hasta donde está el primer espacio.

# data[].attributes.headline
¿En qué situaciones es útil el operador ternario (? :) y en cuáles sería mejor  usar el if-else?

# data[].attributes.subject
¿En qué situaciones es útil el operador ternario (? :) y en cuáles sería mejor  usar el if-else?

# data[].attributes.body
Es más práctico usar el operador ternario cuando el valor está basado en una condición simple, cuando hay una condición y solo dos resultados, por ejemplo si queremos saber si un numero es par o impar, ahi existe solo una condición y dos resultados o es el uno o es el otro pero esto se complica cuando se tiene más resultados o opciones, ya que puede volverse confuso, tampoco nos es útil cuando queremos llevar a cabo varias instrucciones. En esos casos se puede hacer uso del if-else, ya que se usa cuando se necesita hacer más de una cosa dentro de una condición y si esta es más larga y compleja.

# data[].attributes.headline
¿Qué diferencia hay entre una variable local y una global, y por qué se recomienda evitar las globales?

# data[].attributes.subject
¿Qué diferencia hay entre una variable local y una global, y por qué se recomienda evitar las globales?

# data[].attributes.body
La variable local se define dentro de una función y solo es accesible dentro de de esa función, en cambio la variable global se define fuera de una función por lo tanto es accesible desde cualquier parte del programa. No se recomienda usar variables locales porque cualquier parte del programa puede modificarlas, haciendo que sea dificil rastrear quien la cambia y cuando. Además un cambio inesperado en una variable global puede causar errores en lugares lejanos del código complicando la depuración.

# data[].attributes.headline
Al operar con tipos distintos (ej. int y double), ¿qué ocurre en C++? ¿Es siempre seguro?

# data[].attributes.subject
Al operar con tipos distintos (ej. int y double), ¿qué ocurre en C++? ¿Es siempre seguro?

# data[].attributes.body
La conversión de un número pequeño a un grande puede ser generalmente segura (int a double) pero si lo hacemos al revés, del (double al int) puede causar pérdida de datos o precisión ya que el valor no cabe en el tipo de destino. Entonces hay que ser concretos, claros y entender las reglas de conversión del lenguaje.

# data[].attributes.headline
¿Qué error ocurre si usas = en lugar de == en una comparación? ¿Cómo lo detectarías?

# data[].attributes.subject
¿Qué error ocurre si usas = en lugar de == en una comparación? ¿Cómo lo detectarías?

# data[].attributes.body
Si se usa el (=) en vez de (==), lo que estaremos haceindo es asignar un valor en vez de realizar una comparación. Para poder detectar ese error, se puede hacer uso de (-Wall o -Wextra) de esto modo el compilador emitirá una advertencia. También existen herramientas que te pueden ayudar como Cppcheck, Clang-Tidy o PVS- Studio que son capaces de detectar ese patron.