void cgicc::HTMLElement::render(std::ostream& out) const { if (eBoolean == getType() && false == dataSpecified()) { if (0 == fEmbedded) /* no embedded elements */ { // 切换:用来控制是输入开始标签,还是关闭标签 // HTMLBooleanElement::sState为类静态数据成员, // swapState()的作用就是用来切换它的值。 swapState(); /* getState() == true ===> element is active */ if (true == getState()) { // 输出开始标签, out << '<' << getName(); // 开始标签是可能包含属性的, // 如:<a href="http://aquester.cublog.cn">, // 这里的href即为标签<a>的属性 if (0 != fAttributes) { out << ' '; // 属性间使用一个空格分开 fAttributes->render(out); } out << '>'; } else { |