主题项目笔记

1、m_map.insert(m_map.end(), pair<Cheme*, HEMEINFO>(pheme,ti));

m_map.insert(pair<Cheme*, HEMEINFO>(pheme,ti));


Cheme*  p=...;  HEMEINFO hi=....;

m_map[p] = hi;

向map中插入元素后,map会自动排序,所以顺序有可能打乱。

vector、list、CList都不会自动排序。

 

2、Html中用js函数输出内容时,出现异常,最后发现是有两处句末缺少尖括号“>”

如:

document.write("<li class='li_cls' style='width:150px; height:324px;'");

应为:

document.write("<li class='li_cls' style='width:150px; height:324px;'>");

 

3、 document.write(" <span class='cap_td' title='"+srcname+"' > "+ name +" </span> ");

此句中间单双引号较多,造成程序误判结合顺序。在并列单双引号间加空格,解决此问题。

 

4、CString szKeyWord=_T("&#60;");    等价于:CString szKeyWord=_T(">");   

 

5、可以用TEXT()方法将char转换成wchar_t

  例如: wchar_t appName[5]=TEXT("test");

 

6、XSLT中2种加载JS函数的方式:

<xsl:stylesheet version="1.0"
                xmlns:xsl="
http://www.w3.org/1999/XSL/Transform"
                xmlns:msxsl="urn:schemas-microsoft-com:xslt"
                xmlns:user="urn:schemas-microsoft-com:xslt"
                exclude-result-prefixes="msxsl">

(1)  <msxsl:script language="javascript" implements-prefix="user">
    <![CDATA[
     
    ]]>
  </msxsl:script>

与<xsl:template match='/'>并列


(2)<xsl:template match='/'></xsl:template>中:

<script language="javascript">
        <xsl:text>
        <![CDATA[
      
        ]]>
        </xsl:text>
      </script>

与<body ></body>并列

 

7:XSLT中,开始部分

<xsl:stylesheet version = '1.0'
                xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

为单引号

 

8、XLST中赋值时,支持+ - * 运算,/不支持。

<div class="wgt_td">
            <xsl:value-of select="@app_size * 0.001"/>
          </div>

除法符号为div

 

9、CString转为int

Unicode下不能用atoi,而要使用_wtoi 。也可以直接使用_ttoi,会自动选择使用atoi或_wtoi

 

10、CString转化为BSTR

CString sName = _T("Hello");

BSTR bsName = sName.AllocSysString();

SysFreeString(bsName);

 

11、BSTR转化为CString

(1)强制转换

BSTR bstr;

CString csTemp = (LPCTSTR)bstr;

(2).    使用宏COLE2T

BSTR bStr = SysAllocStringLen(OLESTR("XXX\0YYY"), 7);

CString s = COLE2T(bStr);            //将BSTR转换为LPTSTR,不要使用OLE2T

或者

CString s = COLE2CT(bStr);           //将BSTR转换为LPCTSTR,不要使用OLE2CT

SysFreeString(bStr);

(3) 使用中间类_bstr_t

_bstr_t temp(bStr, FALSE);

s = temp;

由于BSTR的实际长度是由字符串之前的4个字节指定的,所以它可以包含NULL字符,转换为CString之后最后的那四个字符"\0YYY"丢失了。

 

12、XSLT中使用XPath进行搜索

<xsl:template match='/response/products'>

<html>

<body >
        <div id="div_app" class="frame" style="display:block; width:724px; height:auto;">
                  <xsl:apply-templates select="product[contains(@name, '地狱')]"/>//搜索并显示name字段中含“地狱”的节点

                 或  <xsl:apply-templates select="product[@show]"/>//显示包含字段show的节点
                 或 <xsl:apply-templates select="product[@show==1]"/>//显示show字段的属性值为1的节点
       </div>
      </body>
   
    </html>
  </xsl:template>

<xsl:template match="response/products/product">//也可在此处设置,如:<xsl:template match="response/products/product[@show=1]">

</xsl:template>

  

你可能感兴趣的:(主题项目笔记)