Hola:
Aquí hay un ejemplo sobre switch - case que funciona bien con una sola letra.
Código C++:
Ver original#include <stdio.h>
int main() {
char *buffer = "Any character stream";
int capa, lettera, nota;
char c;
capa = lettera = nota = 0;
while ( c = *buffer++ ) // Walks buffer until NULL
{
switch ( c )
{
case 'A':
capa++;
break;
case 'a':
lettera++;
break;
default:
nota++;
}
}
printf_s( "\nUppercase a: %d\nLowercase a: %d\nTotal: %d\n",
capa, lettera, (capa + lettera + nota) );
}
https://msdn.microsoft.com/es-es/lib...or=-2147217396
Como puede ver, usa la letra
A y la
a.
Mi código aquí abajo usa más letras en el case, parece ser que no me hace caso.
Código C++:
Ver originalswitch (Recibidos)
{
case "ON":
panel1->BackColor = Color::Green;
label_Lectura->Text = "Activado";
pictureBox_Dibujo->Load("Led\\Led_rojo_encendido.png");
Recibidos = "";
break;
case "OFF":
panel1->BackColor = Color::Red;
label_Lectura->Text = "Desactivado";
pictureBox_Dibujo->Load("Led\\Led_rojo_apagado.png");
Recibidos = "";
break;
}
Usa case ON y OFF, ahí da fallos como este que me indica.
Gravedad Código Descripción Proyecto Archivo Línea
Error C2051 la expresión case no es una constante Entrada_Arduino_CPP_CLR_1 c:\users\usuario\documents\visual studio 2015\projects\entrada_arduino_cpp_clr_1\entrada_ar duino_cpp_clr_1\Form_Principal.h 61
Esto no le pasa nada a C# ni VB.
¿Hay solución para C++ 2015?
Saludos.