青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

colorful

zc qq:1337220912

 

linux 下安裝luabind

  luabind需要boost 和lua, 請先安裝boost, lua
  luabind用到lua的動態(tài)庫,請?jiān)诎惭blua時編譯出 liblua.so

  a: export BOOST_ROOT=/home/zc/tools/boost_1_48_0
  b: export LUA_PATH=/usr/local/
  c: bjam stage --toolset=gcc --with-date_time --with-fpic --with-filesystem link=static debug release  --這一步可以不要
  d: bjam install

posted @ 2012-09-25 20:11 多彩人生 閱讀(908) | 評論 (0)編輯 收藏

關(guān)于lua5.1.4找不到luaL_openlibs的問題

忙了一下午,最后才發(fā)現(xiàn)是src/Makefile里少數(shù)據(jù)
LUAC_T=    luac
LUAC_O=    luac.o print.o
LUA_SO= liblua.so

ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O)
ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO)
ALL_A= $(LUA_A)

default: $(PLAT)

all:    $(ALL_T)

o:    $(ALL_O)

a:    $(ALL_A)

$(LUA_A): $(CORE_O) $(LIB_O)
    $(AR) $@ $?
    $(RANLIB) $@

$(LUA_T): $(LUA_O) $(LUA_A)
    $(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)

$(LUAC_T): $(LUAC_O) $(LUA_A)
    $(CC) -o $@ $(MYLDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS)

$(LUA_SO):$(CORE_O) $(LIB_O)
    $(CC) -o $@ -shared -fPIC $? -ldl -lm

posted @ 2012-09-25 19:53 多彩人生 閱讀(1921) | 評論 (0)編輯 收藏

lua 安裝

下載源文件
tar zxvf lua.tar.gz
make linux
make install

提示找不到readline/readline.h
apt-get install libncurses5-dev libreadline5-dev

posted @ 2012-09-25 14:23 多彩人生 閱讀(317) | 評論 (0)編輯 收藏

VS2008下編譯luabind 0.8.1

     學(xué)了一段時間Lua,顯然直接在項(xiàng)目中使用是很不方便,google了一下,似乎大家都對luabind這個lua包裝類青睞有加,于是我也隨大勢想用用看。
     先做好準(zhǔn)備工作,下載了luabin 0.8.1源碼,Boost 1.3.8源碼和lua 5.1.4源碼,編譯環(huán)境是VS2008 SP1。之前在網(wǎng)上看到一些文章說這些開源軟件之間的版本依賴比較敏感,可能會有這樣那樣的問題,動手之前有些惶恐。
     幸運(yùn)的是,編譯過程很順利,如下:
     1.編譯lua 5.1.4
     進(jìn)入VS2008的命令行工具,定位到lua的源碼目錄下,執(zhí)行命令etc\luavs.bat,沒什么問題的話很快就可以編譯好lua,得到lua51.lib和lua51.dll。
     2.編譯luabind
     解壓下載回來的luabind壓縮包,假設(shè)解壓到d:\luabind-0.8.1\,Boost解壓到d:\boost 1_38_0\,lua解壓到d:\lua 5.1.4\
     在 VS中新建一個靜態(tài)庫項(xiàng)目,將d:\luabind-0.8.1\src下的源碼全部添加到項(xiàng)目中,然后在項(xiàng)目中新建luabind和luabind \detail\兩個虛擬文件夾,對應(yīng)的將d:\luabind-0.8.1\luabind和d:\luabind-0.8.1\luabind \detail下的文件添加到文件夾中。
     然后為項(xiàng)目添加附加包含目錄,右鍵點(diǎn)擊項(xiàng)目節(jié)點(diǎn)->屬性->配置屬性->C\C++標(biāo)簽下,在附加包含目錄中填入d: \luabind-0.8.1\;d:\boost 1_38_0\k;d:\lua 5.1.4\src\。然后修改項(xiàng)目字符集為多字節(jié)字符集。
     準(zhǔn)備就緒,生成項(xiàng)目。在我的環(huán)境中編譯很順利,沒有出現(xiàn)任何問題,成功后會得到luabind.lib。

     接下來就按照慣例來寫一個hello world程序作為使用luabind的第一步。
     在VS中新建一個控制臺項(xiàng)目,類型為DLL,命名項(xiàng)目為Hello World,然后鍵入以下代碼:

 1#include "stdafx.h"
 2#include <iostream>
 3#include <luabind/luabind.hpp>
 4
 5void greet()
 6{
 7    std::cout << "hello world!\n";
 8}

 9
10extern "C" int __declspec(dllexport) init(lua_State* L)
11{
12    using namespace luabind;
13
14    open(L);
15
16    module(L)
17    [
18        def("greet"&greet)
19    ];
20
21    return 0;
22}


   注意,在Windows環(huán)境下init函數(shù)之前是要加 __declspec(dllexport)才能將函數(shù)導(dǎo)出的,而luabind的文檔中的環(huán)境是linux,默認(rèn)不用加 __declspec(dllexport)也可以導(dǎo)出(就因?yàn)檫@個折騰了我半天才把hello word成功運(yùn)行)。
   編譯項(xiàng)目,(記得將luabind.lib和lua51.lib添加到鏈接選項(xiàng)中:項(xiàng)目屬性->連接器->輸入->附加依賴文件,加入luabind.lib和lua51.lib)。
   將hello world.dll放到lua51.dll和lua.exe所在的目錄下。
   打開lua命令行,鍵入:
    
   測試成功,enjoy。

posted @ 2012-09-10 21:05 多彩人生 閱讀(248) | 評論 (0)編輯 收藏

pg_ctl

pg_ctl -- 啟動、停止、重啟 PostgreSQL
2010-01-11 19:08

pg_ctl

名稱

pg_ctl -- 啟動、停止、重啟 PostgreSQL

語法

pg_ctl start [-w] [-s] [-D datadir] [-l filename] [-o options] [-p path]
pg_ctl stop [-W] [-s] [-D datadir] [-m s[mart] | f[ast] | i[mmediate] ]
pg_ctl restart [-w] [-s] [-D datadir] [-m s[mart] | f[ast] | i[mmediate] ] [-o options]
pg_ctl reload [-s] [-D datadir]
pg_ctl status [-D datadir]
pg_ctl kill [signal_name] [process_id]
pg_ctl register [-N servicename] [-U username] [-P password] [-D datadir] [-w] [-o options]
pg_ctl unregister [-N servicename]

描述

pg_ctl 用于啟動、停止、重啟 PostgreSQL 后端服務(wù)器(postgres),或者顯示一個運(yùn)行著的服務(wù)器的狀態(tài)。盡管可以手動啟動服務(wù)器,但是 pg_ctl 封裝了重新定向日志輸出,與終端和進(jìn)程組合理分離,以及另外提供了一個選項(xiàng)用于有控制的關(guān)閉。

start 模式里會啟動一個新的服務(wù)器。服務(wù)器是在后臺啟動的,標(biāo)準(zhǔn)輸入被附著到了 /dev/null 上。如果使用了 -l ,那么標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤將被定向到一個日志文件,要么就是重定向到 pg_ctl 的標(biāo)準(zhǔn)輸出(而不是標(biāo)準(zhǔn)錯誤)。如果沒有選定日志文件,pg_ctl 的標(biāo)準(zhǔn)輸出應(yīng)該重定向到一個文件或者用管道輸出到類似 rotatelogs 這樣的日志滾動程序,否則,postgres 將把它的輸出寫到控制終端(在后臺)并且將不會脫離 shell 的進(jìn)程組。

stop 模式下,那個正在特定數(shù)據(jù)目錄運(yùn)行的服務(wù)器將被關(guān)閉。你可以用 -m 選項(xiàng)選擇三種不同的關(guān)閉模式:"Smart"模式等待所有客戶端中斷連接,這是缺省。"Fast"模式并不等待客戶端中斷連接,所有活躍事務(wù)都被回滾并且 客戶端都被強(qiáng)制斷開。"Immediate"模式將在沒有干凈關(guān)閉的情況下強(qiáng)行退出。這么做將導(dǎo)致在重新啟動的時候的恢復(fù)。

restart 實(shí)際上是先執(zhí)行一個停止,然后緊跟一個啟動。它允許變換 postgres 的命令行選項(xiàng)。

reload 模式簡單地給 postgres 發(fā)送一個 SIGHUP 信號,導(dǎo)致它重新讀取配置文件(postgresql.conf, pg_hba.conf 等),這樣就允許修改配置文件選項(xiàng)而不用重啟系統(tǒng)即可生效。

status 模式監(jiān)查一個服務(wù)器是否在指定的數(shù)據(jù)目錄運(yùn)行,如果是,那么顯示其 PID 和調(diào)用它的命令行選項(xiàng)。

kill 模式允許你給一個指定的進(jìn)程發(fā)送信號。這個功能對 Microsoft Windows 特別有用,因?yàn)樗鼪]有 kill 命令。使用 --help 查看支持的信號名字列表。

register 模式允許你在 Microsoft Windows 上注冊一個系統(tǒng)服務(wù)。

unregister 模式允許你在 Microsoft Windows 上刪除先前用 register 命令注冊的系統(tǒng)服務(wù)。

選項(xiàng)

-D datadir

聲明該數(shù)據(jù)庫的文件系統(tǒng)位置。如果忽略則使用 PGDATA 環(huán)境變量。

-l filename

把服務(wù)器日志輸出附加在 filename 文件上。如果該文件不存在則創(chuàng)建它。umask 設(shè)置為 077 ,因此缺省時是不允許從其它用戶向日志文件訪問的。

-m mode

聲明關(guān)閉模式。mode 可以是 smart, fast, immediate 之一,或者是這三個的首字母之一。

-o options

聲明要直接傳遞給 postgres 的選項(xiàng)。

參數(shù)通常都用單或者雙引號包圍以保證它們作為一個整體傳遞。

-p path

聲明 postgres 可執(zhí)行文件的位置。缺省位于 pg_ctl 自身所在目錄,如果沒找到則使用硬編碼的安裝目錄。除非你想干點(diǎn)什么特別的事情,并且想得到類似沒有找到 postgres 這樣的錯誤,否則必須使用這個選項(xiàng)。

-s

只打印錯誤,而不打印提示性信息。

-w

等待啟動或者關(guān)閉的完成(60 秒超時),這個參數(shù)是關(guān)閉時的缺省值。成功的關(guān)閉是以刪除 PID 文件為標(biāo)志的。對于啟動而言,一次成功的 psql -l 就標(biāo)志著成功。pg_ctl 將企圖使用對 psql 合適的端口,如果存在 PGPORT 環(huán)境變量,那么將用它。否則,它將查找在 postgresql.conf 文件里是否設(shè)置了一個端口。如果都沒有,它將使用 PostgreSQL 編譯時的缺省端口(缺省 5432)。在等待的時候,pg_ctl 將根據(jù)啟動或者關(guān)閉的成功狀況返回一個準(zhǔn)確的退出代碼。

-W

不等待啟動或者停止的完成。這是啟動和重啟的缺省。

posted @ 2012-08-15 18:14 多彩人生 閱讀(469) | 評論 (0)編輯 收藏

精確獲取時間(QueryPerformanceCounter)

LARGE_INTEGER tima,timb;
QueryPerformanceCounter(&tima);

在 Windows Server 2003 和 WindowsXP 中使用 QueryPerformanceCounter 函數(shù)的程序可能執(zhí)行不當(dāng)

QueryPerformanceCounter 來精確計(jì)算執(zhí)行時間
QueryPerformanceCounter 來精確計(jì)算執(zhí)行時間
// 這個程式展示了如何使用QueryPerformanceCounter 來精確計(jì)算執(zhí)行時間
//代碼


 

  1. LARGE_INTEGER m_liPerfFreq={0};
  2.  //獲取每秒多少CPU Performance Tick
  3.  QueryPerformanceFrequency(&m_liPerfFreq); 

  4.  LARGE_INTEGER m_liPerfStart={0};
  5.  QueryPerformanceCounter(&m_liPerfStart);

  6.  for(int i=0; i< 100; i++)
  7.   cout << i << endl;

  8.  LARGE_INTEGER liPerfNow={0};
  9.  // 計(jì)算CPU運(yùn)行到現(xiàn)在的時間
  10.  QueryPerformanceCounter(&liPerfNow);

  11.  int time=( ((liPerfNow.QuadPart - m_liPerfStart.QuadPart) * 1000)/m_liPerfFreq.QuadPart);

  12.  char buffer[100];
  13.  sprintf(buffer,"執(zhí)行時間 %d millisecond ",time);

  14.  cout<<buffer<<endl;


QueryPerformanceCounter()這個函數(shù)返回高精確度性能計(jì)數(shù)器的值,它可以以微妙為單位計(jì)時.但是 QueryPerformanceCounter()確切的精確計(jì)時的最小單位是與系統(tǒng)有關(guān)的,所以,必須要查詢系統(tǒng)以得到 QueryPerformanceCounter()返回的嘀噠聲的頻率.
QueryPerformanceFrequency()提供了這個頻率值,返回每秒嘀噠聲的個數(shù).
計(jì)算確切的時間是從第一次調(diào)用QueryPerformanceCounter()開始的
假設(shè)得到的LARGE_INTEGER為nStartCounter,過一段時間后再次調(diào)用該函數(shù)結(jié)束的,
設(shè)得到nStopCounter.
兩者之差除以QueryPerformanceFrequency()的頻率就是開始到結(jié)束之間的秒數(shù).由于計(jì)時函數(shù)本身要耗費(fèi)很少的時間,要減去一個很少的時間開銷.但一般都把這個開銷忽略.公式如下:   
                         nStopCounter-nStartCounter
ElapsedTime=------------------------------------ - overhead
frequency

double time=(nStopCounter.QuadPart-nStartCounter.QuadPart)/frequency.QuadPart

 

 

這兩個函數(shù)是VC提供的僅供Windows 95及其后續(xù)版本使用的精確時間函數(shù),并要求計(jì)算機(jī)從硬件上支持精確定時器。
QueryPerformanceFrequency()函數(shù)和QueryPerformanceCounter()函數(shù)的原型如下:

       BOOL  QueryPerformanceFrequency(LARGE_INTEGER *lpFrequency);        BOOL  QueryPerformanceCounter(LARGE_INTEGER *lpCount);

  數(shù)據(jù)類型ARGE_INTEGER既可以是一個8字節(jié)長的整型數(shù),也可以是兩個4字節(jié)長的整型數(shù)的聯(lián)合結(jié)構(gòu), 其具體用法根據(jù)編譯器是否支持64位而定。該類型的定義如下:

       typedef union _LARGE_INTEGER        {            struct            {               DWORD LowPart ;// 4字節(jié)整型數(shù)               LONG  HighPart;// 4字節(jié)整型數(shù)            };            LONGLONG QuadPart ;// 8字節(jié)整型數(shù)                     }LARGE_INTEGER ;

  在進(jìn)行定時之前,先調(diào)用QueryPerformanceFrequency()函數(shù)獲得機(jī)器內(nèi)部定時器的時鐘頻率, 然后在需要嚴(yán)格定時的事件發(fā)生之前和發(fā)生之后分別調(diào)用QueryPerformanceCounter()函數(shù),利用兩次獲得的計(jì)數(shù)之差及時鐘頻率,計(jì)算出事件經(jīng) 歷的精確時間。下列代碼實(shí)現(xiàn)1ms的精確定時:

 
  1.        LARGE_INTEGER litmp; 
  2.        LONGLONG QPart1,QPart2;
  3.        double dfMinus, dfFreq, dfTim; 
  4.        QueryPerformanceFrequency(&litmp);
  5.        dfFreq = (double)litmp.QuadPart;// 獲得計(jì)數(shù)器的時鐘頻率
  6.        QueryPerformanceCounter(&litmp);
  7.        QPart1 = litmp.QuadPart;// 獲得初始值
  8.        do
  9.        {
  10.           QueryPerformanceCounter(&litmp);
  11.           QPart2 = litmp.QuadPart;//獲得中止值
  12.           dfMinus = (double)(QPart2-QPart1);
  13.           dfTim = dfMinus / dfFreq;// 獲得對應(yīng)的時間值,單位為秒
  14.        }while(dfTim<0.001);

  其定時誤差不超過1微秒,精度與CPU等機(jī)器配置有關(guān)。 下面的程序用來測試函數(shù)Sleep(100)的精確持續(xù)時間:

 
  1.        LARGE_INTEGER litmp; 
  2.        LONGLONG QPart1,QPart2;
  3.        double dfMinus, dfFreq, dfTim; 
  4.        QueryPerformanceFrequency(&litmp);
  5.        dfFreq = (double)litmp.QuadPart;// 獲得計(jì)數(shù)器的時鐘頻率
  6.        QueryPerformanceCounter(&litmp);
  7.        QPart1 = litmp.QuadPart;// 獲得初始值
  8.        Sleep(100);
  9.        QueryPerformanceCounter(&litmp);
  10.        QPart2 = litmp.QuadPart;//獲得中止值
  11.        dfMinus = (double)(QPart2-QPart1);
  12.        dfTim = dfMinus / dfFreq;// 獲得對應(yīng)的時間值,單位為秒    

  由于Sleep()函數(shù)自身的誤差,上述程序每次執(zhí)行的結(jié)果都會有微小誤差。下列代碼實(shí)現(xiàn)1微秒的精確定時:

 
  1.        LARGE_INTEGER litmp; 
  2.        LONGLONG QPart1,QPart2;
  3.        double dfMinus, dfFreq, dfTim; 
  4.        QueryPerformanceFrequency(&litmp);
  5.        dfFreq = (double)litmp.QuadPart;// 獲得計(jì)數(shù)器的時鐘頻率
  6.        QueryPerformanceCounter(&litmp);
  7.        QPart1 = litmp.QuadPart;// 獲得初始值
  8.        do
  9.        {
  10.           QueryPerformanceCounter(&litmp);
  11.           QPart2 = litmp.QuadPart;//獲得中止值
  12.           dfMinus = (double)(QPart2-QPart1);
  13.           dfTim = dfMinus / dfFreq;// 獲得對應(yīng)的時間值,單位為秒
  14.        }while(dfTim<0.000001);

其定時誤差一般不超過0.5微秒,精度與CPU等機(jī)器配置有關(guān)。(

posted @ 2012-07-27 19:00 多彩人生 閱讀(533) | 評論 (0)編輯 收藏

C/C++通用Makefile

http://wenku.baidu.com/view/17a11ef8fab069dc502201d4.html
http://wenku.baidu.com/view/a2429bd728ea81c758f578cd.html
http://blog.csdn.net/fljing/article/details/6257867

posted @ 2012-07-26 23:19 多彩人生 閱讀(302) | 評論 (0)編輯 收藏

gcc的參數(shù)

http://wuqinzhong.blog.163.com/blog/static/452223120095248474729/

posted @ 2012-07-26 22:34 多彩人生 閱讀(242) | 評論 (0)編輯 收藏

cannot pass objects of non-POD type

移植代碼到Linux下,運(yùn)行總是崩潰(在windows下正常)。
調(diào)試發(fā)現(xiàn)問題出在下列語句:
   wxString szSiteHead = wxString::Format( wxT("<Location /%s>"), file.GetName() );
查看編譯記錄有下列警告信息
   warning: cannot pass objects of non-POD type 'class wxString' through '...'; call will abort at runtime|
提示在運(yùn)行時會異常。
 
查找 POD type定義如下:非原生類型
 
POD stands for Plain Old Data - that is, a struct (or class) with no members except data members. Wikipedia goes into a bit more detail and defines a POD in C++ as "A Plain Old Data Structure in C++ is an aggregate class that contains only PODS as members, has no user-defined destructor, no user-defined copy assignment operator, and no nonstatic members of pointer-to-member type."
 
代碼更改后OK。
wxString szSiteHead = wxString::Format( wxT("<Location /%s>"), file.GetName().c_str() );

===================================================================================
ctags: c++ warning "cannot pass objects of non-POD type"

1、不要忽視編譯時的任何一個 Warning .2、正確使用輸入輸出流,避開高危函數(shù)。

1、printf("Hello %s" ,str.c_str());
2、cout<<str;

string 非原生類型 non-POD,編譯器無法把它傳入.

下面是一個網(wǎng)上的小例子。

im trying to compile following code
--------------------sam.cpp---------------------
#include <string>
#include <iostream>
#include <stdarg.h>
using namespace std;

void Write( const char* msg, const char* msg2, ...)
{
cout <<msg <<" "<<msg2<<endl;
}

int main()
{
string str("World");
Write("Hello","Debug out %s" ,str);
return 0;
}
-------------------------------------------

When i compile this code i get following compilation warning .

[oracle@sahyagiri test]$ g++ sam.cpp
sam.cpp: In function `int main()':
sam.cpp:17: warning: cannot pass objects of non-POD
type `struct std::string'
through `...'; call will abort at runtime

When i run the executable, a.out it fails with Illegal
instruction eror

posted @ 2012-07-26 12:45 多彩人生 閱讀(1258) | 評論 (0)編輯 收藏

shell腳本中局部變量

在shell中定義函數(shù)可以使代碼模塊化,便于復(fù)用代碼。不過腳本本身的變量和函數(shù)的變量的作用域問題可能令你費(fèi)解,在這里梳理一下這個問題。

(1)Shell腳本中定義的變量是global的,其作用域從被定義的地方開始,到shell結(jié)束或被顯示刪除的地方為止。

例1:腳本變量的作用域
#!/bin/bash
#define the function ltx_func
ltx_func()
{
   echo $v1
   #modify the variable v1
   v1=200
}
#define the variable v1
v1=100
#call the function ltx_func
ltx_func
echo $v1

結(jié)果:
100
200
解析:腳本變量v1的作用域從被定義的地方開始,到shell結(jié)束。調(diào)用函數(shù)ltx_func的地方在變量v1的作用域內(nèi),所以能夠訪問并修改變量v1。

(2)Shell函數(shù)定義的變量默認(rèn)是global的,其作用域從“函數(shù)被調(diào)用時執(zhí)行變量定義的地方”開始,到shell結(jié)束或被顯示刪除處為止。函數(shù)定義的變量可以被顯示定義成local的,其作用域局限于函數(shù)內(nèi)。但請注意,函數(shù)的參數(shù)是local的。

例2:函數(shù)定義的global變量
#!/bin/bash
#define the function ltx_func
ltx_func()
{
   #define the variable v2
   v2=200
}
#call the function ltx_func
ltx_func
echo $v2

結(jié)果:
200
解析:函數(shù)變量v2默認(rèn)是global的,其作用域從“函數(shù)被調(diào)用時執(zhí)行變量定義的地方”開始,到shell結(jié)束為止。注意,不是從定義函數(shù)的地方開始,而是從調(diào)用函數(shù)的地方開始。打印命令在變量v2的作用域內(nèi),所以能夠訪問變量v2。

例3:函數(shù)定義的local變量
#!/bin/bash
#define the function ltx_func
ltx_func()
{
   #define the local variable v2
   local v2=200
}
#call the function ltx_func
ltx_func
echo $v2

結(jié)果:
(空)
解析:函數(shù)變量v2顯示定義為local的,其作用域局限于函數(shù)內(nèi)。打印命令在函數(shù)外,不在變量v2的作用域內(nèi),所以能夠不能訪問變量v2。

例4:函數(shù)參數(shù)是local變量
#!/bin/bash
#define the function ltx_func
ltx_func()
{
   echo "param 1: $1"
}
#call the function ltx_func
ltx_func 100

結(jié)果:
100
解析:函數(shù)參數(shù)是local的,通過位置變量來訪問。打印命令輸出函數(shù)的第一個參數(shù)。

(3)如果同名,Shell函數(shù)定義的local變量會屏蔽腳本定義的global變量。

例5:同名local變量屏蔽global變量
#!/bin/bash
#define the function ltx_func
ltx_func()
{
   echo $v1
   #define the local variable v1
   local v1=200
   echo $v1
}
#define the global variable v1
v1=100

#call the function ltx_func
ltx_func
echo $v1

結(jié)果:
100
200
100
解析:global變量v1的作用域從被定義的地方開始,到shell結(jié)束。調(diào)用函數(shù)ltx_func的地方在變量v1的作用域內(nèi),所以能夠變量v1。函 數(shù)又定義了同名的local變量v1,同名local變量屏蔽global變量,所以函數(shù)第二次打印訪問的是local變量。退出函數(shù)后再次打印v1,此 時函數(shù)定義的local變量已經(jīng)消失,訪問的是global變量。

posted @ 2012-07-26 10:53 多彩人生 閱讀(386) | 評論 (0)編輯 收藏

僅列出標(biāo)題
共25頁: First 9 10 11 12 13 14 15 16 17 Last 

導(dǎo)航

統(tǒng)計(jì)

常用鏈接

留言簿(3)

隨筆分類

隨筆檔案

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美在线观看网站| 亚洲免费在线精品一区| 国产一区二区三区精品久久久| 国产欧美一区二区在线观看| 一区二区三区国产在线观看| 国产精品久久久久77777| 久久久久.com| 国产精品国产精品| 欧美性理论片在线观看片免费| 亚洲电影观看| 欧美资源在线观看| 亚洲精品美女在线观看| 久久久久中文| 国产欧美日韩精品丝袜高跟鞋| 日韩一区二区精品葵司在线| 午夜在线一区二区| 中国亚洲黄色| 欧美日韩国产不卡在线看| 国产有码一区二区| 久久久精品国产99久久精品芒果| 亚洲伦理一区| 欧美日韩一区二区高清| 伊人久久大香线蕉av超碰演员| 久久国产福利| 亚洲欧美日韩直播| 国产精品一区二区视频| 久久精品国产久精国产一老狼 | 亚洲少妇最新在线视频| 美女视频网站黄色亚洲| 亚洲欧美日韩在线不卡| 国产精品videosex极品| 亚洲欧美成人综合| 在线视频你懂得一区二区三区| 嫩模写真一区二区三区三州| 欧美色大人视频| 午夜精品美女自拍福到在线| 亚洲一二三区视频在线观看| 国产精品久久久久久久久久久久久久 | 午夜精品久久久久久久蜜桃app | 日韩视频精品在线| 欧美精品aa| 一片黄亚洲嫩模| 亚洲免费在线观看视频| 国产精品成人免费| 欧美一区二区三区在线| 亚洲欧美另类国产| 亚洲精品一区二区三区av| 亚洲欧洲视频在线| 欧美日韩精品系列| 欧美色图天堂网| 欧美在线免费观看| 欧美一级黄色录像| 曰本成人黄色| 99亚洲视频| 午夜精品网站| 久久亚洲影院| 99视频+国产日韩欧美| 午夜视频在线观看一区二区| 激情欧美日韩一区| 亚洲精品社区| 欧美人与性动交cc0o| 久久精品91久久久久久再现| 久久综合导航| 亚洲欧美精品在线| 欧美激情一二三区| 欧美在线视频免费| 欧美成人网在线| 欧美在线欧美在线| 欧美精品日韩一本| 亚洲欧美日韩一区| 一区二区欧美在线| 国产综合在线看| 亚洲高清色综合| 欧美日韩伦理在线免费| 亚洲欧美另类在线观看| 亚洲精品久久7777| 久久精品中文| 亚洲免费成人| 亚洲午夜伦理| 亚洲国产精品成人综合色在线婷婷| 亚洲小说区图片区| 亚洲区在线播放| 午夜一级久久| 性欧美激情精品| 你懂的一区二区| 久久精品99国产精品酒店日本| 久久久av水蜜桃| 久久国产精品久久久久久| 欧美大片免费观看| 免费不卡视频| 亚洲国产老妈| 久久久国产精彩视频美女艺术照福利| 久久九九电影| 在线观看欧美成人| 中国成人在线视频| 亚洲高清色综合| 欧美一区二区啪啪| 正在播放亚洲一区| 久久久久久高潮国产精品视| 亚洲欧美三级在线| 久久日韩粉嫩一区二区三区| 久久久久国产精品厨房| 欧美午夜电影完整版| 亚洲高清二区| 99成人在线| 欧美精品久久久久久久免费观看| 欧美激情欧美激情在线五月| 国产欧美精品在线| 欧美在线二区| 久久国产福利| 国产综合色一区二区三区 | 一本色道久久综合精品竹菊| 亚洲永久免费观看| 国产精品xvideos88| 一本一本久久a久久精品综合麻豆| 在线观看国产日韩| 欧美大秀在线观看| 欧美成人综合网站| 亚洲欧美另类国产| 午夜精品久久久久久久久久久久 | 久久综合九色综合欧美狠狠| 美女视频黄免费的久久| 国产午夜精品视频| 久久久午夜视频| 亚洲激情视频网| 亚洲青涩在线| 久久综合国产精品| 一区二区三区久久| 久久成人综合网| …久久精品99久久香蕉国产| 欧美久久久久久久久久| 亚洲视频免费在线观看| 麻豆国产精品777777在线| 狠狠干综合网| 欧美激情精品久久久久久免费印度 | 亚洲国产精品激情在线观看| 亚洲一区在线直播| 在线欧美日韩精品| 国产精品男gay被猛男狂揉视频| 久久久亚洲精品一区二区三区| 一区二区三区欧美| 亚洲丁香婷深爱综合| 久久福利视频导航| 一区二区三区.www| 一区一区视频| 国产乱码精品一区二区三区五月婷| 鲁鲁狠狠狠7777一区二区| 一本一本大道香蕉久在线精品| 欧美丰满高潮xxxx喷水动漫| 久久久九九九九| 午夜精品福利在线观看| 洋洋av久久久久久久一区| 亚洲第一页自拍| 国产精品视频一区二区高潮| 欧美激情乱人伦| 久久这里有精品视频| 欧美一区二区视频在线观看2020| 99在线观看免费视频精品观看| 欧美成人免费观看| 久久在线视频| 久久国产综合精品| 亚洲欧美影音先锋| 亚洲美女在线视频| 亚洲福利专区| 在线成人国产| 国内一区二区三区在线视频| 国产欧美一区二区精品婷婷| 欧美成人高清| 欧美激情精品| 欧美国产精品日韩| 欧美91大片| 久久字幕精品一区| 免费h精品视频在线播放| 亚洲一二三区视频在线观看| 一区二区精品国产| 中文在线资源观看网站视频免费不卡 | 欧美与欧洲交xxxx免费观看| 欧美日韩性生活视频| 在线天堂一区av电影| 亚洲精品美女91| 99精品国产一区二区青青牛奶| 免费在线观看成人av| 久久人人97超碰国产公开结果| 欧美一级免费视频| 一区二区免费在线播放| 亚洲精选91| 99国产一区二区三精品乱码| 影视先锋久久| 黄色国产精品| 国语精品一区| 国产精品一区二区三区久久| 国产精品免费aⅴ片在线观看| 欧美日韩一区二区三区免费| 欧美日韩一区二区视频在线 | 久久精品国产2020观看福利| 欧美一区二区三区四区高清| 久久久www免费人成黑人精品 | 久久久久免费视频| 免费看黄裸体一级大秀欧美| 欧美高清影院|