以下代码是后期绑定test()方法,但不应该提前绑定?因为test()方法在B类中不是虚拟的(但在A类中),我们使用的是B类的指针.
class A{
public:
virtual void test(){
cout<<"test a";
}
};
class B : public A{
public:
void test(){
cout<<"Test b";
}
};
class C: public B{
public:
void test(){
cout<<"test c";
}
};
int main(){
B *bp;
C objc;
bp = &objc;
bp->test(); // test c
}
Run Code Online (Sandbox Code Playgroud) 如果需要组合布尔表达式,我们通常使用逻辑运算符.如果不使用逻辑运算符,我想知道表达式.
int x=101;
if(90<=x<=100)
cout<<'A';
Run Code Online (Sandbox Code Playgroud)
此代码仍在控制台上打印"A".你能帮我理解一下这个布尔表达式的评估方式和顺序.
c++ boolean-expression logical-operators relational-operators