for(int i=0; i<3; i++){
switch(i)
case 0:
LAYOUT[i].x=i;
LAYOUT[i].y=i;
case 1:
LAYOUT[i].x=funcx(i);
LAYOUT[i].y=funcy(i);
case 2:
LAYOUT[i].x=2*i;
LAYOUT[i].y=4*i;}
Run Code Online (Sandbox Code Playgroud)
这是我遇到问题的简化代码.我想要这个代码要做的是,当i = 0时,在0的情况下做什么,当i = 1时,在情况1中做什么,依此类推.
但是这里是问题..例如当i = 1时,它计算正确的.x(情况1)值,但对于.y,它计算不同的i,例如0或2.我试图将{}放在所有的每个案例里面都有代码,但没有区别.我也试过1到3而不是..
ofstream Zone1H;
Zone1H.open("TEST.txt");
for(int l=0; l<5; l++)
Zone1H<<LAYOUT[i].x<<" "<<LAYOUT[i].y<<endl;
Run Code Online (Sandbox Code Playgroud)
我的保存部分可以成为问题吗?我从来没有遇到这个部分的问题..
你错过了break每个人的结尾case.它落在所有情况下,只有最后一个正在生效.
for(int i=0; i<3; i++){
switch(i){
case 0:
LAYOUT[i].x=i;
LAYOUT[i].y=i;
break; // <-- add this
case 1:
LAYOUT[i].x=funcx(i);
LAYOUT[i].y=funcy(i);
break; // <-- add this
case 2:
LAYOUT[i].x=2*i;
LAYOUT[i].y=4*i;
break; // <-- add this
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
92 次 |
| 最近记录: |