Dreamweaver MX 2004 或其他文本编辑器(例如记事本),用来编辑XML和ActionScript代码
如同所有的XML语言一样,在MXML中,标签和属性都是区分大小写的;
所有的属性值必须用双引号(")或单引号(包含
所有的标签必须是闭合的。没有子标签的标签可以以斜杠直接结束,而无需额外的结束标签:
<mx:Label text="Hello"></mx:Label>
或
<mx:Label text="Hello"/>
ActionScript是区分大小写的
语句必须以分号(;)结尾 ......
一般新手通常只是使用类似的Xerces,
TinyXML之类的XML解析xml,这种方式实际上很浪费时间,自己编写很多代码也容易出错。因为,他们经常要写一个XML对象Entity的类,并附着一堆对象解析的code。工作量比较大。使用XML
Schema工具,XSD设计工具,然后通过工具生成EntityClass和Paser
class。我不知道这种技术确切的起源时间,但是我知道这种用法用法已经被使用有7、8年了吧。以前写程序,用INI保存配置数据,数据类型还要自己定义,当然也要写一堆的code去解析。
这里推荐的思路是:设计XML
Schema,然后使用工具自动生成代码,编写简单的接口供上层App调用。虽然这种XML保存配置数据的方式保密性不好,但是我们假设有一天XML
schema可以直接转换成某一种数据库schema,将配置数据保存到数据库中并依赖数据加密机制保证数据的安全性。这是后话,暂且放放吧。
设计XML Schema的工具有:MS XML tool, XSD from http://wiki.codesynthesis.com/Using_XSD_with_Microsoft_Visual_Studio
,
还有很多商业工具,如XMLSpy, Oxygen XML Editor.
codesynthesis
XSD 是一个开源的工具,来自Berkeley,
从编译选项看,支持wchar *,
但是通过实践和测试,不能很好得读 ......
一般新手通常只是使用类似的Xerces,
TinyXML之类的XML解析xml,这种方式实际上很浪费时间,自己编写很多代码也容易出错。因为,他们经常要写一个XML对象Entity的类,并附着一堆对象解析的code。工作量比较大。使用XML
Schema工具,XSD设计工具,然后通过工具生成EntityClass和Paser
class。我不知道这种技术确切的起源时间,但是我知道这种用法用法已经被使用有7、8年了吧。以前写程序,用INI保存配置数据,数据类型还要自己定义,当然也要写一堆的code去解析。
这里推荐的思路是:设计XML
Schema,然后使用工具自动生成代码,编写简单的接口供上层App调用。虽然这种XML保存配置数据的方式保密性不好,但是我们假设有一天XML
schema可以直接转换成某一种数据库schema,将配置数据保存到数据库中并依赖数据加密机制保证数据的安全性。这是后话,暂且放放吧。
设计XML Schema的工具有:MS XML tool, XSD from http://wiki.codesynthesis.com/Using_XSD_with_Microsoft_Visual_Studio
,
还有很多商业工具,如XMLSpy, Oxygen XML Editor.
codesynthesis
XSD 是一个开源的工具,来自Berkeley,
从编译选项看,支持wchar *,
但是通过实践和测试,不能很好得读 ......
<html xmlns:v="urn:schemas-microsoft-com:vml">
<head>
<STYLE>
v\:* { Behavior: url(#default#VML) }
body {
background-color:DarkGoldenrod;
margin-left: 10px;
margin-top: 10px;
}
</STYLE>
<title>超级大笨狼象棋</title>
</head>
<body onselectstart="document.selection.clear();" onclick="target();" oncontextmenu="selectNull();return(false);">
<v:group style="top:0;left:0;width:400px;height:450px;position:relative;" CoordOrig="0,0" CoordSize="400,450">
<v:Rect id=qiPan style="position:relative;width:460;height:510px;top=-30;left=-30;Z-INDEX:1;" fillColor="#f0e68c" StrokeWeight="2">
<v:TextBox inset="80pt,180pt,1pt,1pt" style="Z-INDEX:2;font-size=2 ......
常常在网上看到一些很的FLASH效果可是下下来后才发现中文不支持或都中文无法显示的问题,所以在网上找了很多资料终于找到了一个简单的方法来解决这个问题,在这里与大家分享一下。
点南嵌入按钮,按下ctrl选中大写,小写,数字,标点符号,中文(全部)后,确定!!
这样就OK了。 ......
常常在网上看到一些很的FLASH效果可是下下来后才发现中文不支持或都中文无法显示的问题,所以在网上找了很多资料终于找到了一个简单的方法来解决这个问题,在这里与大家分享一下。
点南嵌入按钮,按下ctrl选中大写,小写,数字,标点符号,中文(全部)后,确定!!
这样就OK了。 ......
作者: Yanqing Wang (Intel)
在ATOM程序优化利器中,笔者着重讲述了如何使用Intel Compiler对ATOM应用程序的优化,很多网友都比较感兴趣并想知道在GCC编译器下如何优化ATOM。借此,本文将重点于讨论如何使ATOM应用程序在GCC编译器下优化。
细心的网友可能发现GCC4.4.2手册没有讲述如何在ATOM平台优化,所以要通过GCC对ATOM平台优化,一定要从平台的特性出发。为了便于理解,先回顾一下ATOM平台的特点:
1. ATOM平台的指令是顺序执行的。
2. ATOM平台支持超线程技术,也就是我们通常所说的1C:2T。
3. ATOM平台支持SSE3指令集。
如果我们的GCC编译选项能够满足这基本的三大点,那么相应的应用程序性能也将会有很大提升。
讨论1:ATOM应用程序在ATOM计算机上编译。
对于本机编译而言,这种开发环境相对是比较容易优化的。我们只要关心两个基本点:
1. SSE3指令集。
2. 平台环境(32位还是64位?)。
a) 对于32位操作系统,ATOM应用程序的优化设置为:
-mtune=native -m32 -mmmx -msse -msse2 -msse3 -mssse3 -mfpmath=sse -O3
说明:
-mtune 表示CPU类型,因为它是本地编译,所以选择native编译选项。
-m32 表示平台是32位OS。
-mmmx -msse -msse2 -msse3 -msss ......
作者: Yanqing Wang (Intel)
在ATOM程序优化利器中,笔者着重讲述了如何使用Intel Compiler对ATOM应用程序的优化,很多网友都比较感兴趣并想知道在GCC编译器下如何优化ATOM。借此,本文将重点于讨论如何使ATOM应用程序在GCC编译器下优化。
细心的网友可能发现GCC4.4.2手册没有讲述如何在ATOM平台优化,所以要通过GCC对ATOM平台优化,一定要从平台的特性出发。为了便于理解,先回顾一下ATOM平台的特点:
1. ATOM平台的指令是顺序执行的。
2. ATOM平台支持超线程技术,也就是我们通常所说的1C:2T。
3. ATOM平台支持SSE3指令集。
如果我们的GCC编译选项能够满足这基本的三大点,那么相应的应用程序性能也将会有很大提升。
讨论1:ATOM应用程序在ATOM计算机上编译。
对于本机编译而言,这种开发环境相对是比较容易优化的。我们只要关心两个基本点:
1. SSE3指令集。
2. 平台环境(32位还是64位?)。
a) 对于32位操作系统,ATOM应用程序的优化设置为:
-mtune=native -m32 -mmmx -msse -msse2 -msse3 -mssse3 -mfpmath=sse -O3
说明:
-mtune 表示CPU类型,因为它是本地编译,所以选择native编译选项。
-m32 表示平台是32位OS。
-mmmx -msse -msse2 -msse3 -msss ......
最近想写个控制台下的进度条,可以知道程序的进展情况,不用弄个界面。其中最主要的就是“\b“字符,它的ascii码值是10,是退格的意思。
现把代码贴上,如下(可以在vc和linux编译):
progress.c
#include <stdio.h>
#ifdef _WIN32
#include <windows.h>
#define mysleep(n) Sleep(n*1000)
#else
#include <unistd.h>
#define mysleep(n) sleep(n)
#endif
void progressBar(int n)
{
static int currentNumber = 0;
if(n <= currentNumber)
return;
currentNumber = n;
if (n == 1)
{
currentNumber = n;
printf("= %d",n);
fflush(stdout);
return;
}
if(n<11)
printf("\b\b\b");
else
printf("\b\b\b\b");
printf("= ");
printf("%d", n);
fflush(stdout);
}
int main()
{
int i;
for (i = 1; i <= 100; ++i)
{
progressBar(i);
mysleep(1);
}
printf("\n");
return 0;
}
编译:
linux下:
gcc progress.c -o progress
在windows下:
  ......