我有XSLT代码,如:
<xsl:if test="product_name='3" Magnifier'">
<attribute name="Business Unit">
Consumer
</attribute>
</xsl:if>
Run Code Online (Sandbox Code Playgroud)
值3"放大镜(有引号),由于引用歧义,我无法将其与产品名称进行比较.因此如何避免双引号并解决歧义.
谢谢.
我在理解上做了一些练习.在编译下面的代码我得到Derived :: disp()调用,然后调用非虚函数"打印".
我的问题是为什么调用派生类"打印"版本而不是基本打印版本甚至"打印"不是虚拟的.
class Base
{
public:
void print(){
cout<<"Base::Print()\n";
}
virtual void disp(){
cout<<"Base::Disp()\n";
}
};
class Derived: public Base
{
public:
void print(){
cout<<"Derived::Print()\n";
}
void disp(){
cout<<"Derived::Disp()\n";
print();
}
};
void main()
{
Base *pB = new Derived();
pB->disp();
}
Run Code Online (Sandbox Code Playgroud)
输出:
Derived :: Disp()
Derived :: Print()