否则对于多个如果
Else for multiple if's
是否可以在不使用 bool 变量的情况下为所有这些创建多个 if 和另一个?我说的是这样工作的东西:
bool triggered = 0;
if (condition)
{
//code
triggered = 1;
}
if (condion2)
{
//code
triggered = 1;
}
if (!triggered)
{
//code
}
因此,如果这些如果都没有发生 - 就会发生一些事情。在伪代码中,我会这样写:
{
if()
{
}
if()
{
}
}
else
{
}
有没有可能做类似的东西?
不,你不能那样做。你可以做:
if (condition1 || condition2) {
if (condition1) {
//code
}
if (condition2) {
//code
}
} else {
// code
}
但这意味着您必须测试condition1
并condition2
两次。如果有很多条件,第一个if
会很长。
我发现带有triggered
变量的代码更可取。通常,已经有一个变量可以达到目的。例如,表单验证代码通常如下所示:
std::string errors;
if (field1 is invalid) {
errors += "Field1 is invalidn";
}
if (field2 is invalid) {
errors += "Field 2 is invalidn";
}
if (errors == "") {
// process the form
} else {
// display error message
}
相关文章:
- 如果中的多个语句是否与多个 if 相同?
- C++线程安全:如果只有一个线程可以写入非原子变量,但多个线程从中读取. 会遇到问题吗?
- 让用户输入一个键,如果找到多个键,则增加值
- 如何将类成员专用于多个模板值(常量)?
- 如果有多个参数的语句需要是真实的
- GPU cuda 代码是否适用于多个 GPU 卡而无需任何实现
- SWIG 多参数类型映射适用于函数,但如果有多个构造函数,则不适用于构造函数
- 如果有多个结构数组,如何使用初始化列表定义结构变量的成员
- 一个包含多个OpenCL内核的程序相对于多个分别包含一个内核的程序的优势
- 什么是适用于多个入口和多个出口的类似BFS的最佳路径算法
- 强制 cmake 选择依赖位置(如果存在多个)
- 如果存在多个最近点对,则查找所有最近的点对
- 关键部分对象如何精确地适用于多个方法
- STL算法(如for_each)应用于多个参数
- 适用于多个窗口的win32程序
- 适用于多个平台的数据库"tools"
- 配置一个依赖于多个其他CMake项目的CMake项目
- 只有一种材质应用于多个对象
- Jenkins+CMake,适用于多个操作系统和库版本
- WSABUF结构应用于多个应用中