锘??xml version="1.0" encoding="utf-8" standalone="yes"?>9人人澡人人爽人人精品,久久精品动漫,欧美大片国产精品http://www.shnenglu.com/doing5552/璁板綍姣忔棩鐐規淮錛屼笉鏋変漢鐢熶竴涓?/description>zh-cnTue, 30 Sep 2025 02:04:03 GMTTue, 30 Sep 2025 02:04:03 GMT60鍐嶆鏇存柊涓涓?/title><link>http://www.shnenglu.com/doing5552/archive/2015/03/16/210065.html</link><dc:creator>doing5552</dc:creator><author>doing5552</author><pubDate>Mon, 16 Mar 2015 15:45:00 GMT</pubDate><guid>http://www.shnenglu.com/doing5552/archive/2015/03/16/210065.html</guid><wfw:comment>http://www.shnenglu.com/doing5552/comments/210065.html</wfw:comment><comments>http://www.shnenglu.com/doing5552/archive/2015/03/16/210065.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/doing5552/comments/commentRss/210065.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/doing5552/services/trackbacks/210065.html</trackback:ping><description><![CDATA[騫磋繎涓夊崄浜嗭紝鍐嶆鎶婅繖涓崥瀹㈡嬀璧鋒潵鍚с?br />璺濈姣曚笟涔熷凡緇忚繎浜斿勾浜嗭紝鐜板湪涔熷疄鐜頒簡涓浜涘垰鍒氬紑濮嬪伐浣滅殑鐩爣銆?br />涓嶈繃紱繪渶緇堢殑鐩爣榪樻湁寰堣繙鐨勮窛紱伙紝緇х畫鍔犳補鍚э紝瀹屽杽鑷繁錛?img src ="http://www.shnenglu.com/doing5552/aggbug/210065.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/doing5552/" target="_blank">doing5552</a> 2015-03-16 23:45 <a href="http://www.shnenglu.com/doing5552/archive/2015/03/16/210065.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鑱斿悎(union)鐢ㄦ硶http://www.shnenglu.com/doing5552/archive/2013/01/05/196966.htmldoing5552doing5552Sat, 05 Jan 2013 03:45:00 GMThttp://www.shnenglu.com/doing5552/archive/2013/01/05/196966.htmlhttp://www.shnenglu.com/doing5552/comments/196966.htmlhttp://www.shnenglu.com/doing5552/archive/2013/01/05/196966.html#Feedback1http://www.shnenglu.com/doing5552/comments/commentRss/196966.htmlhttp://www.shnenglu.com/doing5552/services/trackbacks/196966.html鑱斿悎(union)鍦–/C++閲岄潰瑙佸緱騫朵笉澶氾紝浣嗘槸鍦ㄤ竴浜涘鍐呭瓨瑕佹眰鐗瑰埆涓ユ牸鐨勫湴鏂癸紝鑱斿悎鍙堟槸棰戠箒鍑虹幇錛岄偅涔堢┒绔熶粈涔堟槸鑱斿悎銆佹庝箞鍘葷敤銆佹湁浠涔堥渶瑕佹敞鎰忕殑鍦版柟鍛紵灝辮繖浜涢棶棰橈紝鎴戣瘯鐫鍋氫竴浜涚畝鍗曠殑鍥炵瓟錛岄噷闈㈣偗瀹氳繕鏈変笉褰撶殑鍦版柟錛屾榪庢寚鍑猴紒 
1銆佷粈涔堟槸鑱斿悎錛?/strong>
   “鑱斿悎”鏄竴縐嶇壒孌婄殑綾伙紝涔熸槸涓縐嶆瀯閫犵被鍨嬬殑鏁版嵁緇撴瀯銆傚湪涓涓?#8220;鑱斿悎”鍐呭彲浠ュ畾涔夊縐嶄笉鍚岀殑鏁版嵁綾誨瀷錛?涓涓璇存槑涓鴻“鑱斿悎”綾誨瀷鐨勫彉閲忎腑錛屽厑璁歌鍏ヨ“鑱斿悎”鎵瀹氫箟鐨勪換浣曚竴縐嶆暟鎹紝榪欎簺鏁版嵁鍏變韓鍚屼竴孌靛唴瀛橈紝宸茶揪鍒拌妭鐪佺┖闂寸殑鐩殑錛堣繕鏈変竴涓妭鐪佺┖闂寸殑綾誨瀷錛氫綅鍩燂級銆?榪欐槸涓涓潪甯哥壒孌婄殑鍦版柟錛屼篃鏄仈鍚堢殑鐗瑰緛銆傚彟澶栵紝鍚宻truct涓鏍鳳紝鑱斿悎榛樿璁塊棶鏉冮檺涔熸槸鍏湁鐨勶紝騫朵笖錛屼篃鍏鋒湁鎴愬憳鍑芥暟銆?/div>
2銆佽仈鍚堜笌緇撴瀯鐨勫尯鍒紵
   “鑱斿悎”涓?#8220;緇撴瀯”鏈変竴浜涚浉浼間箣澶勩備絾涓よ呮湁鏈川涓婄殑涓嶅悓銆傚湪緇撴瀯涓悇鎴愬憳鏈夊悇鑷殑鍐呭瓨絀洪棿錛?涓涓粨鏋勫彉閲忕殑鎬婚暱搴︽槸鍚勬垚鍛橀暱搴︿箣鍜岋紙絀虹粨鏋勯櫎澶栵紝鍚屾椂涓嶈冭檻杈圭晫璋冩暣錛夈傝屽湪“鑱斿悎”涓紝鍚勬垚鍛樺叡浜竴孌靛唴瀛樼┖闂達紝 涓涓仈鍚堝彉閲忕殑闀垮害絳変簬鍚勬垚鍛樹腑鏈闀跨殑闀垮害銆傚簲璇ヨ鏄庣殑鏄紝 榪欓噷鎵璋撶殑鍏變韓涓嶆槸鎸囨妸澶氫釜鎴愬憳鍚屾椂瑁呭叆涓涓仈鍚堝彉閲忓唴錛?鑰屾槸鎸囪鑱斿悎鍙橀噺鍙璧嬩簣浠諱竴鎴愬憳鍊鹼紝浣嗘瘡嬈″彧鑳借祴涓縐嶅鹼紝 璧嬪叆鏂板煎垯鍐插幓鏃у箋?/div>
   涓嬮潰涓句竴涓緥浜嗘潵鍔犲娣辮仈鍚堢殑鐞嗚В銆?nbsp;
    渚?:
#include <stdio.h>
void main()
{
        union number
        {                   /*瀹氫箟涓涓仈鍚?/
                int i;
                struct
                {             /*鍦ㄨ仈鍚堜腑瀹氫箟涓涓粨鏋?/
                        char first;
                        char second;
                }half;
        }num;
        num.i=0x4241;         /*鑱斿悎鎴愬憳璧嬪?/
        printf("%c%c\n", num.half.first, num.half.second);
        num.half.first='a';   /*鑱斿悎涓粨鏋勬垚鍛樿祴鍊?/
        num.half.second='b';
        printf("%x\n", num.i);
        getchar();
}
    杈撳嚭緇撴灉涓? 
     AB 
     6261 
    浠庝笂渚嬬粨鏋滃彲浠ョ湅鍑? 褰撶粰i璧嬪煎悗, 鍏朵綆鍏綅涔熷氨鏄痜irst鍜宻econd鐨勫? 褰撶粰first鍜宻econd璧嬪瓧絎﹀悗, 榪欎袱涓瓧絎︾殑ASCII鐮佷篃灝嗕綔涓篿 鐨勪綆鍏綅鍜岄珮鍏綅銆?/div>
3銆佸浣曞畾涔夛紵
   渚嬪錛?br style="padding: 0px; margin: 0px;" />    union test
    {
      test() { }
      int office;
      char teacher[5];
    }; 
    瀹氫箟浜嗕竴涓悕涓簍est鐨勮仈鍚堢被鍨嬶紝瀹冨惈鏈変袱涓垚鍛橈紝涓涓負鏁村瀷錛屾垚鍛樺悕office錛涘彟涓涓負瀛楃鏁扮粍錛屾暟緇勫悕涓簍eacher銆傝仈鍚堝畾涔変箣鍚庯紝鍗沖彲榪涜鑱斿悎鍙橀噺璇存槑錛岃璇存槑涓簍est綾誨瀷鐨勫彉閲忥紝鍙互瀛樻斁鏁村瀷閲弌ffice鎴栧瓨鏀懼瓧絎︽暟緇則eacher銆?/div>
4銆佸浣曡鏄庯紵
   鑱斿悎鍙橀噺鐨勮鏄庢湁涓夌褰㈠紡錛氬厛瀹氫箟鍐嶈鏄庛佸畾涔夊悓鏃惰鏄庡拰鐩存帴璇存槑銆?br style="padding: 0px; margin: 0px;" />   浠est綾誨瀷涓轟緥錛岃鏄庡涓嬶細
    1) union test
       {
         int office;
         char teacher[5];
       }; 
       union test a,b;    /*璇存槑a,b涓簍est綾誨瀷*/
    2) union test
       {
         int office;
         char teacher[5];
       } a,b;
    3) union 
       {
         int office;
         char teacher[5];
       } a,b; 
       緇忚鏄庡悗鐨刟,b鍙橀噺鍧囦負test綾誨瀷銆俛,b鍙橀噺鐨勯暱搴﹀簲絳変簬test鐨勬垚鍛樹腑鏈闀跨殑闀垮害錛屽嵆絳変簬teacher鏁扮粍鐨勯暱搴︼紝鍏?涓瓧鑺傘俛,b鍙橀噺濡傝祴浜堟暣鍨嬪兼椂錛屽彧浣跨敤浜?涓瓧鑺傦紝鑰岃祴浜堝瓧絎︽暟緇勬椂錛屽彲鐢?涓瓧鑺傘?/div>
5銆佸浣曚嬌鐢紵
   瀵硅仈鍚堝彉閲忕殑璧嬪鹼紝浣跨敤閮藉彧鑳芥槸瀵瑰彉閲忕殑鎴愬憳榪涜銆傝仈鍚堝彉閲忕殑鎴愬憳琛ㄧず涓猴細     
鑱斿悎鍙橀噺鍚?鎴愬憳鍚?nbsp;
渚嬪錛宎琚鏄庝負test綾誨瀷鐨勫彉閲忎箣鍚庯紝鍙嬌鐢╝.class銆乤.office 
涓嶅厑璁稿彧鐢ㄨ仈鍚堝彉閲忓悕浣滆祴鍊兼垨鍏跺畠鎿嶄綔錛屼篃涓嶅厑璁稿鑱斿悎鍙橀噺浣滃垵濮嬪寲璧嬪鹼紝璧嬪煎彧鑳藉湪紼嬪簭涓繘琛屻?br style="padding: 0px; margin: 0px;" />榪樿鍐嶅己璋冭鏄庣殑鏄紝涓涓仈鍚堝彉閲忥紝姣忔鍙兘璧嬩簣涓涓垚鍛樺箋傛崲鍙ヨ瘽璇達紝涓涓仈鍚堝彉閲忕殑鍊煎氨鏄仈鍚堝彉鍛樼殑鏌愪竴涓垚鍛樺箋?/div>
6銆佸尶鍚嶈仈鍚?/strong>
   鍖垮悕鑱斿悎浠呬粎閫氱煡緙栬瘧鍣ㄥ畠鐨勬垚鍛樺彉閲忓叡鍚屼韓涓涓湴鍧,鑰屽彉閲忔湰韜槸鐩存帴寮曠敤鐨?涓嶄嬌鐢ㄩ氬父鐨勭偣鍙瘋繍綆楃璇硶.渚嬪錛?br style="padding: 0px; margin: 0px;" />     錛僫 nclude <iostream>
     void main()
     {
         union{ 
                int test;
                char c; 
               };          
        test=5;
        c=′a′;
        std::cout<<i<<" "<<c;
     }
    姝e鎵瑙佸埌鐨?鑱斿悎鎴愬垎璞″0鏄庣殑鏅氬眬閮ㄥ彉閲忛偅鏍瘋寮曠敤,浜嬪疄涓婂浜庣▼搴忚岃█,榪欎篃姝f槸浣跨敤榪欎簺鍙橀噺鐨勬柟寮?鍙﹀,灝界琚畾涔夊湪涓涓仈鍚堝0鏄庝腑,浠栦滑涓庡悓涓涓▼搴忓揩閭g殑浠諱綍鍏朵粬灞閮ㄥ彉閲忓叿鏈夌浉鍚岀殑浣滅敤鍩熺駭鍒?榪欐剰鍛寵繖鍖垮悕鑱斿悎鍐呯殑鎴愬憳鐨勫悕縐頒笉鑳戒笌鍚屼竴涓綔鐢ㄥ煙鍐呯殑鍏朵粬涓鐩存爣蹇楃鍐茬獊.
    瀵瑰尶鍚嶈仈鍚堣繕瀛樺湪濡備笅闄愬埗:
    鍥犱負鍖垮悕鑱斿悎涓嶄嬌鐢ㄧ偣榪愮畻絎︼紝鎵浠ュ寘鍚湪鍖垮悕鑱斿悎鍐呯殑鍏冪礌蹇呴』鏄暟鎹?涓嶅厑璁告湁鎴愬憳鍑芥暟錛屼篃涓嶈兘鍖呭惈縐佹湁鎴栧彈淇濇姢鐨勬垚鍛樸傝繕鏈?鍏ㄥ眬鍖垮悕鑱斿悎蹇呴』鏄潤鎬?static)鐨勶紝鍚﹀垯灝卞繀欏繪斁鍦ㄥ尶鍚嶅悕瀛楃┖闂翠腑銆?/div>
7銆佸嚑鐐歸渶瑕佽璁虹殑鍦版柟錛?/strong>
   1銆佽仈鍚堥噷闈㈤偅浜涗笢瑗夸笉鑳藉瓨鏀撅紵
      鎴戜滑鐭ラ亾錛岃仈鍚堥噷闈㈢殑涓滆タ鍏變韓鍐呭瓨錛屾墍浠ラ潤鎬併佸紩鐢ㄩ兘涓嶈兘鐢紝鍥犱負浠栦滑涓嶅彲鑳藉叡浜唴瀛樸?br style="padding: 0px; margin: 0px;" />   2銆佺被鍙互鏀懼叆鑱斿悎鍚楋紵
      鎴戜滑鍏堢湅涓涓緥瀛愶細
      class Test
      {
      public:
    Test():data(0) { }
      private:
          int data;
      };
     typedef union _test
     {
Test test;   
     }UI;   
     緙栬瘧閫氫笉榪囷紝涓轟粈涔堝憿錛?br style="padding: 0px; margin: 0px;" />     鍥犱負鑱斿悎閲屼笉鍏佽瀛樻斁甯︽湁鏋勯犲嚱鏁般佹瀽澶熷嚱鏁般佸鍒舵嫹璐濇搷浣滅絳夌殑綾伙紝鍥犱負浠栦滑鍏變韓鍐呭瓨錛岀紪璇戝櫒鏃犳硶淇濊瘉榪欎簺瀵硅薄涓嶈鐮村潖錛屼篃鏃犳硶淇濊瘉紱誨紑鏃惰皟鐢ㄦ瀽澶熷嚱鏁般?br style="padding: 0px; margin: 0px;" />    3銆佸張鏄尶鍚嶆児鐨勭ジ錛燂紵
       鎴戜滑鍏堢湅涓嬩竴孌典唬鐮侊細 
class test
{
        public:
             test(const char* p);
             test(int in);
             const operator char*() const {return
data.ch;}
             operator long() const {return data.l;}
        private:
     enum type {Int, String };
            union 
     {
const char* ch;
int i;
      }datatype;
      type stype;
      test(test&);
      test& operator=(const test&);
        };
       test::test(const char *p):stype
(String),datatype.ch(p)     { }
       test::test(int in):stype(Int),datatype.l(i)     {
}
     鐪嬪嚭浠涔堥棶棰樹簡鍚楋紵鍛靛懙錛岀紪璇戦氫笉榪囥備負浠涔堝憿錛熼毦閬揹atatype.ch(p)鍜宒atatype.l(i)鏈夐棶棰樺悧錛?br style="padding: 0px; margin: 0px;" />     鍝堝搱錛岄棶棰樺湪鍝憿錛熻鎴戜滑鏉ョ湅鐪嬫瀯閫爐est瀵硅薄鏃跺彂鐢熶簡浠涔堬紝褰撳垱寤簍est瀵硅薄鏃訛紝鑷劧瑕佽皟鐢ㄥ叾鐩稿簲鐨勬瀯閫犲嚱鏁幫紝鍦ㄦ瀯閫犲嚱鏁頒腑褰撶劧瑕佽皟鐢ㄥ叾鎴愬憳鐨勬瀯閫犲嚱鏁幫紝鎵浠ュ叾瑕佸幓璋冪敤datatype鎴愬憳鐨勬瀯閫犲嚱鏁幫紝浣嗘槸浠栨病鏈夋瀯閫犲嚱鏁板彲璋冪敤錛屾墍浠ュ嚭
閿欍?br style="padding: 0px; margin: 0px;" />     娉ㄦ剰浜嗭紝榪欓噷鍙茍涓嶆槸鍖垮悕鑱斿悎錛佸洜涓哄畠鍚庨潰绱ц窡浜嗕釜data! 
    4銆佸浣曟湁鏁堢殑闃叉璁塊棶鍑洪敊錛?br style="padding: 0px; margin: 0px;" />       浣跨敤鑱斿悎鍙互鑺傜渷鍐呭瓨絀洪棿錛屼絾鏄篃鏈変竴瀹氱殑椋庨櫓錛氶氳繃涓涓笉閫傚綋鐨勬暟鎹垚鍛樿幏鍙栧綋鍓嶅璞$殑鍊鹼紒渚嬪涓婇潰鐨刢h銆乮浜ら敊璁塊棶銆?br style="padding: 0px; margin: 0px;" />       涓轟簡闃叉榪欐牱鐨勯敊璇紝鎴戜滑蹇呴』瀹氫箟涓涓澶栫殑瀵硅薄錛屾潵璺熻釜褰撳墠琚瓨鍌ㄥ湪鑱斿悎涓殑鍊煎緱綾誨瀷錛屾垜浠О榪欎釜棰濆鐨勫璞′負錛歶nion鐨勫垽鍒紡銆?br style="padding: 0px; margin: 0px;" />       涓涓瘮杈冨ソ鐨勭粡楠屾槸錛屽湪澶勭悊浣滀負綾繪垚鍛樼殑union瀵硅薄鏃訛紝涓烘墍鏈塽nion鏁版嵁綾誨瀷鎻愪緵涓緇勮闂嚱鏁般?/div>

doing5552 2013-01-05 11:45 鍙戣〃璇勮
]]>POSIX 綰跨▼http://www.shnenglu.com/doing5552/archive/2012/12/31/196877.htmldoing5552doing5552Mon, 31 Dec 2012 08:06:00 GMThttp://www.shnenglu.com/doing5552/archive/2012/12/31/196877.htmlhttp://www.shnenglu.com/doing5552/comments/196877.htmlhttp://www.shnenglu.com/doing5552/archive/2012/12/31/196877.html#Feedback0http://www.shnenglu.com/doing5552/comments/commentRss/196877.htmlhttp://www.shnenglu.com/doing5552/services/trackbacks/196877.html

POSIX 綰跨▼璇﹁В銆丳OSIX 綰跨▼緙栫▼銆丯PTL

POSIX 琛ㄧず鍙Щ妞嶆搷浣滅郴緇熸帴鍙o紙Portable Operating System Interface 錛岀緝鍐欎負 POSIX 鏄負浜嗚闊蟲洿鍍?UNIX錛夈傜數姘斿拰鐢靛瓙宸ョ▼甯堝崗浼氾紙Institute of Electrical and Electronics Engineers錛孖EEE錛夋渶鍒濆紑鍙?POSIX 鏍囧噯錛屾槸涓轟簡鎻愰珮 UNIX 鐜涓嬪簲鐢ㄧ▼搴忕殑鍙Щ妞嶆с傚叿浣撶殑璇?POSIX 鏄?IEEE 涓鴻鍦ㄥ悇縐?UNIX 鎿嶄綔緋葷粺涓婅繍琛岀殑杞歡瀹氫箟 API 鎵瑙勫畾鐨勪竴緋誨垪浜掔浉鍏寵仈鐨勬爣鍑嗙殑鎬葷О錛岃?X 鍒欒〃鏄庡叾瀵?Unix API 鐨勪紶鎵褲侺inux 鍩烘湰涓婇愭瀹炵幇浜?POSIX 鍏煎錛屼絾騫舵病鏈夊弬鍔犳寮忕殑 POSIX 璁よ瘉銆傚綋鍓嶇殑 POSIX 鏂囨。鍒嗕負涓変釜閮ㄥ垎錛歅OSIX Kernel API錛孭OSIX 鍛戒護鍜屽伐鍏烽泦錛屽強 POSIX 涓鑷存ф祴璇曘侾osix 綰跨▼錛圥OSIX threads錛屽張縐?Pthreads錛夋槸璐熻矗 POSIX 鐨?IEEE 濮斿憳浼氬紑鍙戠殑涓濂楃嚎紼嬫帴鍙c?/p>

Linux 綰跨▼妯″瀷

Linux 鏈鍒濈敤鐨勭嚎紼嬫ā鍨嬫槸 LinuxThread, 瀹冧笉鍏煎 POSIX錛岃屼笖瀛樺湪涓浜涙ц兘闂錛屾墍浠ョ洰鍓?Linux 鎽掑純浜嗗畠錛岄噰鐢ㄤ簡鍩轟簬 Pthreads 鐨?NPTL錛圢ative POSIX Threads Library for Linux錛夋ā鍨嬶紝 NPTL 淇浜?LinuxThread 鐨勮澶氱己鐐癸紝騫舵彁渚涗簡鏇村ソ鐨勬ц兘銆?/p>

鍥為〉棣?/a>



doing5552 2012-12-31 16:06 鍙戣〃璇勮
]]>[杞琞姝e垯琛ㄨ揪寮?0鍒嗛挓鍏ラ棬鏁欑▼http://www.shnenglu.com/doing5552/archive/2012/11/09/194962.htmldoing5552doing5552Fri, 09 Nov 2012 02:35:00 GMThttp://www.shnenglu.com/doing5552/archive/2012/11/09/194962.htmlhttp://www.shnenglu.com/doing5552/comments/194962.htmlhttp://www.shnenglu.com/doing5552/archive/2012/11/09/194962.html#Feedback0http://www.shnenglu.com/doing5552/comments/commentRss/194962.htmlhttp://www.shnenglu.com/doing5552/services/trackbacks/194962.html闃呰鍏ㄦ枃

doing5552 2012-11-09 10:35 鍙戣〃璇勮
]]>
宸ヤ綔浜屽勾http://www.shnenglu.com/doing5552/archive/2012/07/03/181275.htmldoing5552doing5552Tue, 03 Jul 2012 09:58:00 GMThttp://www.shnenglu.com/doing5552/archive/2012/07/03/181275.htmlhttp://www.shnenglu.com/doing5552/comments/181275.htmlhttp://www.shnenglu.com/doing5552/archive/2012/07/03/181275.html#Feedback1http://www.shnenglu.com/doing5552/comments/commentRss/181275.htmlhttp://www.shnenglu.com/doing5552/services/trackbacks/181275.html寰崥鏈夌偣浠栨硾婊ヤ簡

doing5552 2012-07-03 17:58 鍙戣〃璇勮
]]>
[ubunt gcc stl] 浣跨敤搴撳嚱鏁?sort() 鎺掑簭鑷畾涔夌被鏃墮噸杞給perator<http://www.shnenglu.com/doing5552/archive/2011/02/15/140098.htmldoing5552doing5552Tue, 15 Feb 2011 09:32:00 GMThttp://www.shnenglu.com/doing5552/archive/2011/02/15/140098.htmlhttp://www.shnenglu.com/doing5552/comments/140098.htmlhttp://www.shnenglu.com/doing5552/archive/2011/02/15/140098.html#Feedback0http://www.shnenglu.com/doing5552/comments/commentRss/140098.htmlhttp://www.shnenglu.com/doing5552/services/trackbacks/140098.htmlclass arc {
……
bool operator<(const arc& b) const;

}

鐢ㄥ鍣ㄥvector,deque瀛樻斁arc瀵硅薄錛屽啀鍏朵笂浣跨敤stl鐨刟lgrithms涓殑sort綆楁硶錛?br>sort(arcVector.begin(),arcVector.end());

鏂規硶涓渶瑕佷嬌鐢?#8220;<”浣滄瘮杈冩搷浣滐紝鏁呴渶瑕侀噸杞給perator<
綆鍗曢噸杞?bool operator(arc&);
寰堝彲鑳芥姤閿欙細
/usr/include/c++/4.2/bits/stl_algo.h:100: 閿欒錛?no match 涓?#8216;operator<’鍦?#8216;__b < __c’
涓昏鏄己灝慶onst鐨勯檺瀹氾紙涓や釜閮介渶瑕侊級銆?br>鍚﹀垯鏈夐敊錛?br>/usr/include/c++/4.2/bits/stl_algo.h:91: 閿欒錛?灝?#8216;const arc’浣滀負‘bool arc::operator<(const arc&)’鐨?#8216;this’瀹炲弬鏃朵涪寮冧簡綾誨瀷闄愬畾

鍒嗘瀽鐭ラ亾linux涓璼tl涓嬪C錛嬶紜鐨勭被鍨嬪畨鍏ㄧ害鏉熷緢寮猴紝const淇濊瘉瀵煎叆瀵硅薄鍜岃嚜韜璞¢兘涓嶈兘琚慨鏀廣?br>鑰宻tl鐨剆ort鎿嶄綔紜疄涓嶉渶瑕佷慨鏀規瘮杈冪殑瀵硅薄錛屼篃涓嶅簲璇ヨ淇敼錛屾晠寮哄埗浣跨敤鐨勮嚜瀹氫箟operator<闇瑕佷袱涓猚onst闄愬埗姣旇緝鐨勪袱涓璞°?br>
浣跨敤friend鏂規硶錛?br>friend bool operator<(const arc&, const arc&);

涓ょ閿欒錛?br>1.friend bool operator<(const arc&, const arc&) const;
閿欒錛?non-鎴愬憳鍑芥暟‘bool operator<(const arc&, const arc&)’涓嶈兘鎷ユ湁 cv 闄愬畾絎?br>
2.bool operator<(const arc&, const arc&) [const]
閿欒錛?‘bool arc::operator<(const arc&, const arc&) const’甯︿笖浠呭甫 1 涓疄鍙?

doing5552 2011-02-15 17:32 鍙戣〃璇勮
]]>
linux Grep 鐢ㄦ硶http://www.shnenglu.com/doing5552/archive/2010/11/01/132025.htmldoing5552doing5552Mon, 01 Nov 2010 11:08:00 GMThttp://www.shnenglu.com/doing5552/archive/2010/11/01/132025.htmlhttp://www.shnenglu.com/doing5552/comments/132025.htmlhttp://www.shnenglu.com/doing5552/archive/2010/11/01/132025.html#Feedback0http://www.shnenglu.com/doing5552/comments/commentRss/132025.htmlhttp://www.shnenglu.com/doing5552/services/trackbacks/132025.htmlc2008-04-02 09:12
Grep : g (globally) search for a re (regular expression ) and p (print ) the results.

1銆佸弬鏁幫細
-I 錛氬拷鐣ュぇ灝忓啓
-c 錛氭墦鍗板尮閰嶇殑琛屾暟
-l 錛氫粠澶氫釜鏂囦歡涓煡鎵懼寘鍚尮閰嶉」
-v 錛氭煡鎵句笉鍖呭惈鍖歸厤欏圭殑琛?
-n錛氭墦鍗板寘鍚尮閰嶉」鐨勮鍜岃鏍?

2銆丷E錛堟鍒欒〃杈懼紡錛?
\ 蹇界暐姝e垯琛ㄨ揪寮忎腑鐗規畩瀛楃鐨勫師鏈夊惈涔?
^ 鍖歸厤姝e垯琛ㄨ揪寮忕殑寮濮嬭
$ 鍖歸厤姝e垯琛ㄨ揪寮忕殑緇撴潫琛?
\< 浠庡尮閰嶆鍒欒〃杈懼紡鐨勮寮濮?
\>; 鍒板尮閰嶆鍒欒〃杈懼紡鐨勮緇撴潫
[ ] 鍗曚釜瀛楃錛涘[A] 鍗矨絎﹀悎瑕佹眰
[ - ] 鑼冨洿 錛涘[A-Z]鍗矨錛孊錛孋涓鐩村埌Z閮界鍚堣姹?
. 鎵鏈夌殑鍗曚釜瀛楃
* 鎵鏈夊瓧絎︼紝闀垮害鍙互涓?

3銆佷婦渚?
# ps -ef | grep in.telnetd
root 19955 181 0 13:43:53 ? 0:00 in.telnetd

# more size.txt size鏂囦歡鐨勫唴瀹?
b124230
b034325
a081016
m7187998
m7282064
a022021
a061048
m9324822
b103303
a013386
b044525
m8987131
B081016
M45678
B103303
BADc2345

# more size.txt | grep '[a-b]' 鑼冨洿 錛涘[A-Z]鍗矨錛孊錛孋涓鐩村埌Z閮界鍚堣姹?
b124230
b034325
a081016
a022021
a061048
b103303
a013386
b044525
# more size.txt | grep '[a-b]'*
b124230
b034325
a081016
m7187998
m7282064
a022021
a061048
m9324822
b103303
a013386
b044525
m8987131
B081016
M45678
B103303
BADc2345

# more size.txt | grep '' 鍗曚釜瀛楃錛涘[A] 鍗矨絎﹀悎瑕佹眰
b124230
b034325
b103303
b044525
# more size.txt | grep '[bB]'
b124230
b034325
b103303
b044525
B081016
B103303
BADc2345

# grep 'root' /etc/group
root::0:root
bin::2:root,bin,daemon
sys::3:root,bin,sys,adm
adm::4:root,adm,daemon
uucp::5:root,uucp
mail::6:root
tty::7:root,tty,adm
lp::8:root,lp,adm
nuucp::9:root,nuucp
daemon::12:root,daemon

# grep '^root' /etc/group 鍖歸厤姝e垯琛ㄨ揪寮忕殑寮濮嬭
root::0:root


# grep 'uucp' /etc/group
uucp::5:root,uucp
nuucp::9:root,nuucp

# grep '\<uucp' /etc/group
uucp::5:root,uucp


# grep 'root$' /etc/group 鍖歸厤姝e垯琛ㄨ揪寮忕殑緇撴潫琛?
root::0:root
mail::6:root


# more size.txt | grep -i 'b1..*3' -i 錛氬拷鐣ュぇ灝忓啓

b124230
b103303
B103303

# more size.txt | grep -iv 'b1..*3' -v 錛氭煡鎵句笉鍖呭惈鍖歸厤欏圭殑琛?

b034325
a081016
m7187998
m7282064
a022021
a061048
m9324822
a013386
b044525
m8987131
B081016
M45678
BADc2345

# more size.txt | grep -in 'b1..*3'
1:b124230
9:b103303
15:B103303

# grep '$' /etc/init.d/nfs.server | wc -l
128
# grep '\$' /etc/init.d/nfs.server | wc –l 蹇界暐姝e垯琛ㄨ揪寮忎腑鐗規畩瀛楃鐨勫師鏈夊惈涔?

15
# grep '\$' /etc/init.d/nfs.server
case "$1" in
>;/tmp/sharetab.$$
[ "x$fstype" != xnfs ] && \
echo "$path\t$res\t$fstype\t$opts\t$desc" \
>;>;/tmp/sharetab.$$
/usr/bin/touch -r /etc/dfs/sharetab /tmp/sharetab.$$
/usr/bin/mv -f /tmp/sharetab.$$ /etc/dfs/sharetab
if [ -f /etc/dfs/dfstab ] && /usr/bin/egrep -v '^[ ]*(#|$)' \
if [ $startnfsd -eq 0 -a -f /etc/rmmount.conf ] && \
if [ $startnfsd -ne 0 ]; then
elif [ ! -n "$_INIT_RUN_LEVEL" ]; then
while [ $wtime -gt 0 ]; do
wtime=`expr $wtime - 1`
if [ $wtime -eq 0 ]; then
echo "Usage: $0 { start | stop }"


# more size.txt

the test file
their are files
The end

# grep 'the' size.txt
the test file
their are files

# grep '\<the' size.txt
the test file
their are files

# grep 'the\>;' size.txt
the test file

# grep '\<the\>;' size.txt
the test file

# grep '\<[Tt]he\>;' size.txt
the test file
The end



doing5552 2010-11-01 19:08 鍙戣〃璇勮
]]>HTTP浠g悊濡備綍姝g‘澶勭悊Cookiehttp://www.shnenglu.com/doing5552/archive/2010/10/10/129374.htmldoing5552doing5552Sun, 10 Oct 2010 14:29:00 GMThttp://www.shnenglu.com/doing5552/archive/2010/10/10/129374.htmlhttp://www.shnenglu.com/doing5552/comments/129374.htmlhttp://www.shnenglu.com/doing5552/archive/2010/10/10/129374.html#Feedback0http://www.shnenglu.com/doing5552/comments/commentRss/129374.htmlhttp://www.shnenglu.com/doing5552/services/trackbacks/129374.html2005 騫?11 鏈?10 鏃?/p>
澶у鏁扮殑 Web 搴旂敤紼嬪簭閮借姹傜淮鎶ゆ煇縐嶄細璇濈姸鎬侊紝濡傜敤鎴瘋喘鐗╄濺鐨勫唴瀹廣傝繖縐嶄細璇濈姸鎬佺殑淇濇寔寰堝鎯呭喌涓嬮渶瑕佸熷姪浜嶤ookie鎴栬匰ession鐨勫府鍔┿傛湰鏂囩粨鍚堝湪綰塊〉闈㈢炕璇?錛圡achine Translation System錛夐」鐩腑瀵逛簬Cookie鐨勫鐞嗘柟娉曪紝鎺㈣涓涓嬪浣曞湪HTTP搴旂敤浠g悊涓紜鐞咰ookie鐨勪紶閫掑拰綆$悊闂銆?/blockquote>

璇昏呭畾浣嶄負鍏鋒湁Java鍜學eb寮鍙戠粡楠岀殑寮鍙戝拰璁捐浜哄憳銆?/p>

璇昏呭彲浠ュ涔犲埌鍏充簬Cookie鐨勫伐浣滃師鐞嗗拰Cookie鍗忚鐨勭粏鑺傦紝浠ュ強鍦ㄤ竴涓狧TTP搴旂敤浠g悊鐨勫満鏅笅Cookie鐨勭鐞嗗拰澶勭悊鎬濇兂錛屽茍鍙互鐩存帴浣跨敤鏂囦腑鐨勪唬鐮佸拰鎬濊礬錛屾彁楂樺伐浣滄晥鐜囥?/p>

闅忕潃瓚婃潵瓚婂鐨勭郴緇熺Щ妞嶅埌浜哤eb涓婏紝HTTP鍗忚鍏鋒湁浜嗘瘮浠ュ墠鏇村箍娉涚殑搴旂敤銆備笉鍚岀殑緋葷粺瀵筗EB瀹炵幇鎻愬嚭浜嗕笉鍚岀殑瑕佹眰錛屽熀浜嶩TTP鍗忚鐨勭綉緇滃簲鐢ㄦ瓚嬩簬澶嶆潅鍖栧拰澶氬厓鍖栥傚緢澶氬簲鐢ㄩ渶瑕佹妸鐢ㄦ埛璇鋒眰鐨勯〉闈㈣繘琛屽鐞嗗悗鍐嶈繑鍥炵粰鐢ㄦ埛錛屾瘮濡傞〉闈㈠叧閿瓧榪囨護錛岄〉闈㈠唴瀹圭紦瀛樸佸唴瀹規悳绱€侀〉闈㈢炕璇戠瓑絳夈傝繖浜涘簲鐢ㄥ湪瀹為檯鏁堟灉涓婄被浼間簬涓涓狧TTP搴旂敤浠g悊錛氬畠浠鍏堟帴鍙楃敤鎴風殑璇鋒眰錛屾牴鎹敤鎴瘋姹傜殑URL鍘葷湡姝g殑鐩爣鏈嶅姟鍣ㄥ彇鍥炵洰鏍囬〉闈紝鍐嶆牴鎹笉鍚屽簲鐢ㄧ殑瑕佹眰鍋氬嚭鐩稿簲澶勭悊鍚庤繑鍥炵粰鐢ㄦ埛銆傝繖鏍風敤鎴風洿鎺ラ潰瀵圭殑灝辨槸榪欎釜HTTP搴旂敤浠g悊錛岃岄氳繃瀹冧笌鍏朵粬欏甸潰榪涜浜や簰銆侰ookie鎴朣ession鎶鏈殑搴旂敤錛岃В鍐充簡HTTP鍗忚鐨勪竴涓棶棰?-- 鏃犳硶淇濇寔瀹㈡埛鐘舵侊紝鍥犳瀹冪幇鍦ㄨ騫挎硾搴旂敤浜庡悇縐峎eb绔欑偣涓備笂闈㈡彁鍒扮殑閭d簺搴旂敤濡傛灉涓嶈兘澶勭悊濂紺ookie鍜孲ession鐨勪紶閫掋佹洿鏂板拰搴熼櫎絳夐棶棰橈紝灝變細鏋佸ぇ鐨勯檺鍒跺畠浠墍鑳藉鐞嗙珯鐐圭殑鑼冨洿錛屽洜姝ゅ浣曞湪HTTP搴旂敤浠g悊涓紜鐞咰ookie錛屾垚涓轟竴涓繀欏昏В鍐崇殑闂銆傛湰鏂囩粨鍚堝湪欏甸潰緲昏瘧錛圡achine Translation System錛夐」鐩腑瀵逛簬Cookie鐨勫鐞嗘柟娉曪紝鎺㈣涓涓嬭繖鏂歸潰鐨勮В鍐蟲柟妗堛?/p>

MTS欏圭洰綆浠嬪強璁ㄨ鍓嶆彁

Machine Translation System錛堜互涓嬬畝縐癕TS錛夋槸涓涓湪綰垮疄鏃墮〉闈㈢炕璇戠郴緇燂紝涓虹敤鎴峰湪綰挎彁渚涙妸鑻辨枃欏甸潰緲昏瘧鎴愬叾浠?縐嶈璦鐨勬湇鍔°傜敤鎴烽氳繃鍚慚TS緋葷粺鎻愪氦涓涓被浼間笅闈㈢殑URL浣跨敤姝ゆ湇鍔★紝鍏朵腑鍙傛暟url鎸囨槑浜嗙敤鎴鋒墍闇瑕佺炕璇戠殑鐩爣鍦板潃錛屽弬鏁發anguage鎸囨槑浜嗘墍闇緲昏瘧鎴愮殑鐩爣璇█錛寃ww.mts.com鏄亣鎯充腑鎻愪緵MTS鏈嶅姟鐨勭珯鐐廣?/p>

HTTP://www.mts.com/translate?url=http://www.ibm.com/&language=French

涓涓畬鏁寸殑MTS緋葷粺澶勭悊榪囩▼鍙互鍒嗚В鎴愪互涓嬪嚑涓楠わ細

  • 鐢ㄦ埛鍚慚TS鎻愪氦鍚堥傜殑URL銆?
  • MTS鍦ㄦ帴鍒扮敤鎴風殑璇鋒眰鍚庯紝瑙f瀽鍑虹敤鎴烽渶瑕佺炕璇戠殑鐩爣鍦板潃鍜岀洰鏍囪璦錛屾牴鎹敤鎴瘋姹傜殑鐩爣鍦板潃錛屾妸璇鋒眰杞彂鍒扮洰鏍囨湇鍔″櫒銆?
  • MTS鎺ュ彈鏉ヨ嚜鐩爣鏈嶅姟鍣ㄧ殑搴旂瓟錛屽寘鎷〉闈俊鎭拰HTTP澶翠俊鎭?
  • MTS鍦ㄧ‘瀹氬緱鍒版紜殑鐩爣欏甸潰鍚庯紝鎶婇〉闈㈠唴瀹歸佸叆WebSphere Translation Server榪涜緲昏瘧銆?
  • 鎶婄炕璇戝悗鐨勯〉闈㈣繛鍚屼慨鏀瑰悗鐨凥TTP澶翠俊鎭彁浜ょ粰鐢ㄦ埛銆?

MTS閫昏緫鍥?/strong>
MTS閫昏緫鍥?src="http://www.ibm.com/developerworks/cn/java/j-cookie/images/image002.jpg"

褰撶劧錛岃繖鍏朵腑娑夊強鍒板緢澶氱殑搴旂敤澶勭悊銆傛瘮濡備笌鍚勭HTTP/HTTPS绔欑偣寤虹珛鑱旂粨銆佹牴鎹瓾TTP澶翠俊鎭繘琛岄〉闈㈣煩杞拰閿欒澶勭悊銆佷負濮嬬粓淇濇寔鐢ㄦ埛鍦ㄧ炕璇戞ā寮忎笅鑰屽鐩爣鐨凥TML欏甸潰榪涜鍒嗘瀽鍜屼慨鏀癸紝鏍規嵁緋葷粺璁劇疆瀵規煇浜汥NT錛圖o Not Translate錛夌殑欏甸潰榪涜榪囨護鍜岃煩杞紝褰撶劧榪樻湁瀵笴ookie鐨勫鐞嗙瓑絳夈傚叾浠栭棶棰樿窡榪欑瘒鏂囩珷鍏寵仈涓嶅ぇ錛屾垜浠噸鐐硅璁哄湪榪欑鎯呭喌涓嬬殑Cookie澶勭悊銆侰ookie璺熼殢鐩爣鏈嶅姟鍣ㄧ殑HTTP澶翠俊鎭MTS鎺ユ敹鍒幫紝緇忚繃MTS鏁寸悊涔嬪悗鍙戠粰瀹㈡埛绔祻瑙堝櫒銆侻TS鍦ㄦ帴鍒頒笅涓嬈$敤鎴峰鍚屼竴涓珯鐐圭殑緲昏瘧璇鋒眰鏃訛紝鍐嶆妸浠庡鎴風寰楀埌鐨凜ookie鍙戦佺粰鐩爣鏈嶅姟鍣ㄣ?/p>

鍦ㄤ互涓婄殑鍦烘櫙涓紝MTS鍏呭綋鐨勪綔鐢ㄧ被浼間簬涓縐岺TTP搴旂敤浠g悊鏈嶅姟鍣紝瀹冧唬鏇跨敤鎴峰彇寰楃洰鏍囬〉闈紝騫跺湪浣滃嚭鐩稿簲澶勭悊鍚庡啀鎻愪氦緇欑敤鎴楓傚綋鐒訛紝榪欑浠g悊鏈嶅姟鍣ㄤ笉闇瑕佺敤鎴蜂慨鏀規祻瑙堝櫒鐨勪唬鐞嗘湇鍔″櫒鍙傛暟鎴栬呯綉緇滈厤緗紝鑰屽彧鏄畝鍗曠殑鍦ㄦ祻瑙堝櫒鐨勫湴鍧鏍忎腑杈撳叆涓涓狹TS鑳藉璇嗗埆鐨刄RL鍗沖彲銆傛綃囨枃绔犱篃鏄湪榪欐牱涓涓簲鐢ㄥ満鏅殑鍩虹涓婏紝灞曞紑瀵笻TTP搴旂敤浠g悊鏈嶅姟鍣ㄥ浣曞鐞咰ookie鐨勮璁恒?/p>



鍥為〉棣?/font>


闂鐨勪駭鐢?/span>

鍦∕TS緋葷粺涓紝鐩爣鏈嶅姟鍣ㄧ殑Cookie鍦ㄤ袱涓湴鏂逛細浜х敓闂銆傚綋MTS鎺ユ敹鐩爣鏈嶅姟鍣ㄥ簲絳旂殑鏃跺欙紝Cookie闅忕潃HTTP澶翠俊鎭MTS鎺ユ敹鍒扮殑銆傝繖鏃跺欑洰鏍囨湇鍔″櫒璁や負MTS灝辨槸鏈緇堝鎴鳳紝鍥犳瀹冭祴浜堜簡Cookie涓庣洰鏍囨湇鍔″櫒鐩哥鐨勫睘鎬с傝屽鏋淢TS鎶婅繖浜汣ookie鍘熷皝涓嶅姩鐨勪繚瀛樺湪HTTP澶翠俊鎭腑錛屼紶緇欑湡姝g殑鏈緇堢敤鎴風殑璇濓紝鐢ㄦ埛鐨勬祻瑙堝櫒浼氬洜涓鴻繖浜汣ookie涓嶅悎娉曡屽拷鐣ュ畠浠傚悓鐞嗭紝褰揅ookie浠庢祻瑙堝櫒绔紶鍥炵洰鏍囨湇鍔″櫒鐨勬椂鍊欙紝涔熶細閬囧埌鐩稿悓鐨勯棶棰樸傚洜姝ゆ湁蹇呰瀵笴ookie榪涜涓浜涘鐞嗭紝浠ヤ繚璇佺敤鎴風殑嫻忚鍣ㄨ兘鐪熸璇嗗埆鍜屽埄鐢ㄨ繖浜汣ookie銆?/p>

浣嗘槸涓轟綍鐢ㄦ埛嫻忚鍣ㄦ棤娉曡瘑鍒粠鐩爣鏈嶅姟鍣ㄤ紶榪囨潵鐨勫師濮婥ookie鍛紵榪欐槸鍥犱負鍑轟簬瀹夊叏鎬х殑鑰冭檻錛孋ookie瑙勮寖鍒跺畾鐨勬椂鍊欏Cookie鐨勪駭鐢熷拰鎺ュ彈璁劇疆浜嗕竴浜涗弗鏍肩殑瑙勮寖錛屼笉絎﹀悎榪欎簺瑙勮寖鐨凜ookie錛屾祻瑙堝櫒鍜屾湇鍔″櫒閮藉皢浜堜互蹇界暐銆備笅闈㈡垜浠粠Cookie瑙勮寖鍏ユ墜榪涜浠嬬粛銆?/p>



鍥為〉棣?/font>


Cookie鐨勮鑼冧粙緇?/span>

鐩墠鏈変互涓嬪嚑縐岰ookie瑙勮寖錛?/p>

  • Netscape cookie鑽夋錛氭槸鏈鏃╃殑cookie瑙勮寖錛屽熀浜巖fc2109銆傚敖綆¤繖涓鑼冧笌rc2109鏈夎緝澶х殑宸埆錛屼絾鏄緢澶氭湇鍔″櫒閮戒笌涔嬪吋瀹廣?
  • rfc2109錛?鏄痺3c鍙戝竷鐨勭涓涓畼鏂筩ookie瑙勮寖銆傜悊璁轟笂璁詫紝鎵鏈夌殑鏈嶅姟鍣ㄥ湪澶勭悊cookie(鐗堟湰1)鏃訛紝閮借閬靛驚姝よ鑼冦傞仐鎲劇殑鏄紝榪欎釜瑙勮寖澶弗鏍間簡錛屼互鑷村緢澶氭湇鍔″櫒涓嶆紜殑瀹炴柦浜嗚瑙勮寖鎴栦粛鍦ㄤ嬌鐢∟etscape瑙勮寖銆?
  • rfc2965瑙勮寖瀹氫箟浜哻ookie鐗堟湰2錛屽茍璇存槑浜哻ookie鐗堟湰1鐨勪笉瓚熾?

rfc2965瑙勮寖鐨勪嬌鐢紝鐩墠騫朵笉澶氥俽fc2109瑙勮寖鐩稿簲瑕佷弗鏍煎緱澶氾紝鍦ㄥ疄闄呭簲鐢ㄤ笂錛屽茍涓嶆槸鎵鏈夌殑嫻忚鍣ㄥ拰Web鏈嶅姟鍣ㄩ兘涓ユ牸閬靛畧銆傚洜姝ょ浉姣旇緝鑰岃█錛孨etscape cookie鑽夋鍊掓槸涓涓瘮杈冪畝媧佸拰琚箍娉涙敮鎸佺殑Cookie瑙勮寖錛屽洜姝ゆ垜浠湪榪欓噷浠etscape cookie鑽夋涓哄熀紜榪涜璁ㄨ錛屽浜庡叾浠栦袱縐嶈鑼冿紝鎴戜滑鐨勮璁哄拰浠g爜鍏鋒湁鐩稿悓鐨勬剰涔夈傚叧浜嶯etscape cookie鑽夋鐨勭粏鑺傦紝澶у鍙互鍙傜収Netscape瀹樻柟绔欑偣錛岃繖閲屾垜浠垪涓句竴浜涘拰鎴戜滑璁ㄨ鏈夊叧鐨勫唴瀹廣?/p>

鏍規嵁Netscape cookie鑽夋鐨勬弿榪幫紝Cookie 鏄疻eb 鏈嶅姟鍣ㄥ悜鐢ㄦ埛鐨勬祻瑙堝櫒鍙戦佺殑涓孌礎SCII鐮佹枃鏈備竴鏃︽敹鍒癈ookie錛屾祻瑙堝櫒浼氭妸Cookie鐨勪俊鎭墖鏂互"鍚?鍊?瀵?name-value pairs)鐨勫艦寮忓偍瀛樹繚瀛樺湪鏈湴銆傝繖浠ュ悗錛屾瘡褰撳悜鍚屼竴涓猈eb 鏈嶅姟鍣ㄨ姹備竴涓柊鐨勬枃妗f椂錛學eb 嫻忚鍣ㄩ兘浼氬彂閫佷箣绔欑偣浠ュ墠瀛樺偍鍦ㄦ湰鍦扮殑Cookie銆傚垱寤篊ookie鐨勬渶鍒濈洰鐨勬槸鎯寵Web鏈嶅姟鍣ㄨ兘澶熼氳繃澶氫釜HTTP璇鋒眰榪借釜瀹㈡埛銆傛湁浜涘鏉傜殑緗戠粶搴旂敤闇瑕佸湪涓嶅悓鐨勭綉欏典箣闂翠繚鎸佷竴鑷達紝瀹冧滑闇瑕佽繖縐嶄細璇濈姸鎬佺殑淇濇寔鑳藉姏銆?/p>

嫻忚鍣ㄤ笌Web鏈嶅姟鍣ㄩ氳繃HTTP鍗忚榪涜閫氳錛岃孋ookie灝辨槸淇濆瓨鍦℉TTP鍗忚鐨勮姹傛垨鑰呭簲絳斿ご閮紙鍦℉TTP鍗忚涓紝鏁版嵁鍖呮嫭涓ら儴鍒嗭紝涓閮ㄥ垎鏄ご閮紝鐢變竴浜涘悕鍊煎鏋勬垚錛岀敤鏉ユ弿榪拌琚紶杈撴暟鎹殑涓浜涗俊鎭備竴閮ㄥ垎鏄富浣?body)錛屾槸鐪熸鐨勬暟鎹紙濡侶TML欏甸潰絳夛級錛夎繘琛屼紶閫佺殑銆?/p>

鍦℉TML鏂囨。琚彂閫佷箣鍓嶏紝Web鏈嶅姟鍣ㄩ氳繃浼犻丠TTP 鍖呭ご涓殑Set-Cookie 娑堟伅鎶婁竴涓猚ookie 鍙戦佸埌鐢ㄦ埛鐨勬祻瑙堝櫒涓備笅闈㈡槸涓涓伒寰狽etscape cookie鑽夋鐨勫畬鏁寸殑Set-Cookie 澶達細


Set-Cookie錛歝ustomer=huangxp; path=/foo; domain=.ibm.com;
            expires= Wednesday, 19-OCT-05 23:12:40 GMT; [secure]
            

Set-Cookie鐨勬瘡涓睘鎬цВ閲婂涓嬶細

  • Customer=huangxp 涓涓?鍚嶇О錛濆?瀵癸紝鎶婂悕縐癱ustomer璁劇疆涓哄?huangxp"錛岃繖涓睘鎬у湪Cookie涓繀欏繪湁銆?
  • path=/foo 鎺у埗鍝簺璁塊棶鑳藉瑙﹀彂cookie 鐨勫彂閫併傚鏋滄病鏈夋寚瀹歱ath錛宑ookie 浼氬湪鎵鏈夊姝ょ珯鐐圭殑HTTP 浼犻佹椂鍙戦併傚鏋減ath=/directory錛屽彧鏈夎闂?directory 涓嬮潰鐨勭綉欏墊椂錛宑ookie鎵嶈鍙戦併傚湪榪欎釜渚嬪瓙涓紝鐢ㄦ埛鍦ㄨ闂洰褰?foo涓嬬殑鍐呭鏃訛紝嫻忚鍣ㄥ皢鍙戦佹cookie銆傚鏋滄寚瀹氫簡path錛屼絾鏄痯ath涓庡綋鍓嶈闂殑url涓嶇錛屽垯姝ookie灝嗚蹇界暐銆?
  • domain=.ibm.com 鎸囧畾cookie琚彂閫佸埌鍝彴璁$畻鏈轟笂銆傛甯告儏鍐典笅錛宑ookie鍙閫佸洖鏈鍒濆悜鐢ㄦ埛鍙戦乧ookie 鐨勮綆楁満銆傚湪榪欎釜渚嬪瓙涓紝cookie 浼氳鍙戦佸埌浠諱綍鍦?ibm.com鍩熶腑鐨勪富鏈恒傚鏋渄omain 琚涓虹┖錛宒omain 灝辮璁劇疆涓哄拰鎻愪緵cookie 鐨刉eb 鏈嶅姟鍣ㄧ浉鍚屻傚鏋渄omain涓嶄負絀猴紝騫朵笖瀹冪殑鍊煎張鍜屾彁渚沜ookie鐨刉eb鏈嶅姟鍣ㄥ煙鍚嶄笉絎︼紝榪欎釜Cookie灝嗚蹇界暐銆?
  • expires= Wednesday, 19-OCT-05 23:12:40 GMT 鎸囧畾cookie 澶辨晥鐨勬椂闂淬傚鏋滄病鏈夋寚瀹氬け鏁堟椂闂達紝榪欎釜cookie 灝變笉浼氳鍐欏叆璁$畻鏈虹殑紜洏涓婏紝騫朵笖鍙寔緇埌榪欐浼氳瘽緇撴潫銆?
  • secure 濡傛灉secure 榪欎釜璇嶈浣滀負Set-Cookie 澶寸殑涓閮ㄥ垎錛岄偅涔坈ookie 鍙兘閫氳繃瀹夊叏閫氶亾浼犺緭錛堢洰鍓嶅嵆SSL閫氶亾錛夈傚惁鍒欙紝嫻忚鍣ㄥ皢蹇界暐姝ookie銆?

涓鏃︽祻瑙堝櫒鎺ユ敹浜哻ookie錛岃繖涓猚ookie鍜屽榪滅Web鏈嶅姟鍣ㄧ殑榪炵畫璇鋒眰灝嗕竴璧瘋嫻忚鍣ㄥ彂閫併備緥濡?鍓嶄竴涓猚ookie 琚瓨鍏ユ祻瑙堝櫒騫朵笖嫻忚鍣ㄨ瘯鍥捐姹?URL http://www.ibm.com/foo/index.html 鏃訛紝涓嬮潰鐨凥TTP 鍖呭ご灝辮鍙戦佸埌榪滅鐨刉eb鏈嶅姟鍣ㄣ?/p>

GET /foo/index.html HTTP/1.0
Cookie錛歝ustomer=huangxp





鍥為〉棣?/font>


涓嬈″吀鍨嬬殑緗戠粶嫻忚榪囩▼

鍦ㄤ簡瑙d簡Cookie鍗忚鐨勪竴浜涘熀鏈唴瀹逛箣鍚庯紝璁╂垜浠湅鐪嬩竴嬈″吀鍨嬬殑緗戠粶嫻忚榪囩▼涓祻瑙堝櫒濡備綍璇嗗埆鍜屽鐞咰ookie錛?/p>

  • 嫻忚鍣ㄥ浜嶹eb鏈嶅姟鍣ㄥ簲絳斿寘澶翠腑Cookie鐨勬搷浣滄楠わ細
    1. 浠嶹eb鏈嶅姟鍣ㄧ殑搴旂瓟鍖呭ご涓彁鍙栨墍鏈夌殑cookie銆?br>2. 瑙f瀽榪欎簺cookie鐨勭粍鎴愰儴鍒嗭紙鍚嶇О錛屽鹼紝璺緞絳夌瓑錛夈?br>3. 鍒ゅ畾涓繪満鏄惁鍏佽璁劇疆榪欎簺cookie銆傚厑璁哥殑璇濓紝鍒欐妸榪欎簺Cookie瀛樺偍鍦ㄦ湰鍦般?
  • 嫻忚鍣ㄥWeb鏈嶅姟鍣ㄨ姹傚寘澶翠腑鎵鏈夌殑Cookie榪涜絳涢夌殑姝ラ錛?br>1. 鏍規嵁璇鋒眰鐨刄RL鍜屾湰鍦板瓨鍌╟ookie鐨勫睘鎬э紝鍒ゆ柇閭d簺Cookie鑳借鍙戦佺粰Web鏈嶅姟鍣ㄣ?br>2. 瀵逛簬澶氫釜cookie錛屽垽瀹氬彂閫佺殑欏哄簭銆?br>3. 鎶婇渶瑕佸彂閫佺殑Cookie鍔犲叆鍒拌姹侶TTP鍖呭ご涓竴璧峰彂閫併?




鍥為〉棣?/font>


鐢盡TS浠g悊鐨勭綉緇滄祻瑙堣繃紼?/span>

浠ヤ笂鎴戜滑浜嗚В浜嗗湪涓涓吀鍨嬬殑嫻忚鍣ㄤ笌Web鏈嶅姟鍣ㄤ氦浜掔殑鏃跺欙紝Cookie鐨勪紶閫掕繃紼嬨備笅闈㈡垜浠皢鐪嬪埌錛屽鏋滃湪MTS浠g悊緗戠粶嫻忚鐨勮繃紼嬩腑錛屼笉瀵笴ookie榪涜淇敼錛屼笂闈㈢殑Cookie浼犻掕繃紼嬪皢鏃犳硶瀹炵幇銆?/p>

1. 鍋囪鐢ㄦ埛甯屾湜鎶?http://www.ibm.com/foo/index.html 欏甸潰緲昏瘧鎴愭硶鏂囷紝搴旇浣跨敤濡備笅鐨剈rl瀵筂TS鍙戝嚭璇鋒眰

錛?

http://www.mts.com/translate?url=http://www.ibm.com/foo/index.html&language=French

2. MTS鎺ユ敹鐢ㄦ埛鐨勮姹傦紝榪炴帴榪滅▼鐩爣鏈嶅姟鍣?http://www.ibm.com/foo/index.html銆傜洰鏍囨湇鍔″櫒鍋氬嚭搴旂瓟錛岃繑鍥濰TTP澶村拰HTML欏甸潰鍐呭銆傚叾涓紝鍏稿瀷鐨凥TTP澶村唴瀹瑰涓嬶細


HTTP/1.1 200 OK
            Date: Mon, 24 Oct 2005 06:54:41 GMT
            Server: IBM_HTTP_Server
            Cache-Control: no-cache
            Content-Length: 19885
            Connection: close
            Set-Cookie錛歝ustomer=huangxp; path=/foo; domain=.ibm.com;
            expires= Wednesday, 19-OCT-05 23:12:40 GMT
            Content-Type: text/html
            

3. MTS涓嶅Set-Cookie鍚庣殑鍐呭浣滀換浣曞鐞嗭紝鐩存帴鎶婂畠鍔犲埌鐢ㄦ埛嫻忚鍣ㄧ殑搴旂瓟澶翠笂鍙戦佺粰嫻忚鍣ㄣ?/p>

4. 嫻忚鍣ㄥ皢浠嶴et-Cookie涓В鏋愬嚭domain鍜宲ath鐨勫鹼紝鍒嗗埆鏄?ibm.com鍜?foo錛屽茍涓庤姹傜殑url錛歨ttp://www.mts.com/translate?url=http://www.ibm.com/foo/index.html&language=French榪涜姣旇緝銆傝姹倁rl鐨刣omain鏄痺ww.mts.com錛宲ath鏄?錛屼笌Set-Cookie涓殑灞炴т笉絎︼紝鎵浠ユ祻瑙堝櫒灝嗗拷鐣ユCookie銆?/p>

鍙﹀錛屽湪嫻忚鍣ㄥ彂閫丆ookie鐨勬椂鍊欎篃浼氶亣鍒板悓鏍風殑闂錛屽悓鏍峰涓婁緥錛屽鏋滄祻瑙堝櫒閲屾湰鏉ュ凡緇忓瓨鍌ㄤ簡http://www.ibm.com/foo/鐨凜ookie錛屼絾鐢變簬鐢ㄦ埛瑕侀氳繃MTS璁塊棶姝ょ珯鐐癸紝嫻忚鍣ㄧ粡涓嶄細鎶婂凡緇忓瓨鍌ㄧ殑Cookie涓婅漿鍒癕TS涓紝MTS涔熷氨鏃犳硶鎶婁箣浼犻掑埌http://ibm.com/foo/涓娿?/p>

鍩轟簬涓婇潰Cookie瑙勮寖鐨勪粙緇嶅拰渚嬭瘉錛屾垜浠兘鐪嬪嚭錛屾祻瑙堝櫒鍦ㄦ帴鍙楁煇涓涓珯鐐圭殑Cookie鐨勬椂鍊欙紝闇瑕佹鏌ookie鐨勫弬鏁癲omain銆乸ath銆乻ecure錛岀湅鏄惁涓庡綋鍓嶇殑绔欑偣鍜孶RL鐩哥錛屽鏋滀笉絎︾殑璇濓紝灝變細蹇界暐銆傚彟涓鏂歸潰銆傛祻瑙堝櫒鍦ㄤ笂浼燙ookie鐨勬椂鍊欙紝涔熶細鏍規嵁褰撳墠鎵璁塊棶绔欑偣鐨勫睘鎬э紝涓婁紶鐩稿叧鐨凜ookie錛岃屽叾浠栫殑Cookie鍒欎笉浜堜笂浼犮?/p>

鑷蟲錛屾垜浠璁轟簡闇瑕佷慨鏀笴ookie鐨勬牴鏈師鍥犲湪浜嶤ookie瑙勮寖鐨勯檺鍒躲備笅闈㈡垜浠璁轟袱縐嶈В鍐抽棶棰樼殑鎬濊礬銆?/p>



鍥為〉棣?/font>


瑙e喅闂鐨勪袱縐嶆濊礬

Cookie鐨勫瓨鍦ㄦ槸瑕佽В鍐矵TTP鍗忚鏈韓鍏堝ぉ鐨勭己闄?鏃犵姸鎬佹э紝瀹冧負鐢ㄦ埛淇濆瓨浜嗕竴浜涢渶瑕佺殑鐘舵佷俊鎭傚洜姝ゆ垜浠В鍐蟲闂鐨勬渶鏈川鐨勫嚭鍙戠偣錛屼篃灝辨槸鎵懼埌涓縐嶉斿緞鑳戒負鐢ㄦ埛淇濆瓨Cookie鎵鎻愪緵鐢ㄦ埛鐘舵佷俊鎭紝瀹為檯涓婂氨鏄疦ame/Value瀵廣?/p>

鎬濊礬涓

絎竴縐嶆濊礬灝辨槸淇敼鐩爣鏈嶅姟鍣ㄥ彇寰楃殑Cookie錛屼嬌涔嬬鍚圡TS绔欑偣鐨勫睘鎬э紝鐒跺悗浣滀負MTS绔欑偣鐨凜ookie瀛樺偍鍒扮敤鎴風殑嫻忚鍣ㄤ腑鍘匯傚綋鐒訛紝榪欑淇敼蹇呴』淇濈暀鍘熷Cookie鐨勬墍鏈夊睘鎬у鹼紝褰撲互鍚庤闂悓涓涓洰鏍囨湇鍔″櫒鐨勬椂鍊欙紝MTS鑳芥牴鎹繚瀛樼殑灞炴у艱繕鍘熷嚭鍘熷Cookie錛岀劧鍚庤繘琛屾彁浜ゃ?/p>

鍏蜂綋鍒板睘鎬у肩殑淇濆瓨浣嶇疆錛屾病鏈夊お澶氶夋嫨鐨勪綑鍦幫紝瀹為檯涓婏紝domain錛宲ath錛宻ecure錛宔xpires榪欏嚑涓睘鎬ч兘鏃犳硶鍒╃敤錛屽彧鏈夊埄鐢╪ame=value榪欎竴灞炴у銆傛垜浠殑鍋氭硶鏄垱閫犱竴涓柊鐨凜ookie錛屾妸鍘熷Cookie鐨刣omain錛宲ath鐨勫間笌name鍊艱繘琛岀紪鐮侊紝鐢ㄥ垎闅旂闄勫姞鍦∟ame鍊肩殑鍚庨潰錛岀鍊肩粰鏂扮殑Cookie銆傝繖鏍峰仛涔熷悓鏃墮伩鍏嶄簡涓嶅悓鐩爣鏈嶅姟鍣ㄥ鏋滃嚭鐜板悓鍚嶇殑Cookie錛屽皢浼氫簰鐩歌鐩栫殑鎯呭喌錛圕ookie瑙勮寖閲岄潰涔熻瀹氫簡錛屽鎴風浠omain錛宲ath錛宯ame浣滀負Cookie鐨勫敮涓鏍囩ず錛夈傝屽師濮婥ookie鐨剆ecure鍜宔xpires鍊鹼紝鐩存帴絎︾粰鏂扮殑Cookie錛屾柊Cookie鐨刣omain鍜宲ath璁炬垚緙虹渷鍊鹼紝榪欐牱錛屾柊Cookie灝卞彲浠ヨ嫻忚鍣ㄦ甯告帴鍙椼傜敱浜庢祻瑙堝櫒鎺ュ彈鐨勬墍鏈塁ookie鐨刣omain鍜宲ath鍊奸兘涓鏍鳳紝鍥犳姣忔鐢ㄦ埛瀵筂TS鎻愬嚭璇鋒眰鏃訛紝嫻忚鍣ㄩ兘浼氭妸鎵鏈変笌MTS绔欑偣鐩稿叧鐨凜ookie涓婁紶錛屽洜姝わ紝MTS榪橀渶瑕佽繕鍘熷師濮嬬殑Cookie錛岃繃婊ゆ帀涓庣洰鏍囨湇鍔″櫒涓嶇浉騫茬殑Cookie錛岀劧鍚庝笂浼犳湁鐢ㄧ殑Cookie銆?/p>

榪欑鎬濊礬鐨勪紭鐐瑰湪浜嶤ookie瀛樺偍鍦ㄥ鎴風錛屽彲浠ュ仛鍒伴暱鏈熷瓨鍌紝嫻忚鍣ㄨ嚜宸辨牴鎹瓹ookie鐨別xpires鍊煎仛鍑哄垽鏂紝鐪佹帀寰堝寮鍙戠殑楹葷儲銆傜己鐐規槸杞崲鐨勮繃紼嬬浉瀵硅緝澶嶆潅銆傚彟澶栬繕鏈変竴涓己鐐癸紝涔熸槸鐢變簬Cookie瑙勮寖鐨勯檺鍒舵墍閫犳垚鐨勩侰ookie瑙勮寖瀵逛簬涓涓祻瑙堝櫒鍚屾椂鑳藉瀛樺偍鐨凜ookie鏁伴噺浣滃嚭浜嗚瀹氥?/p>

  • 鎬誨叡300 涓猚ookie
  • 姣忎釜Cookie 4 K 鐨勫瓨鍌ㄥ閲?
  • 姣忎竴涓猟omain 鎴栬?server 20 涓猚ookie銆?

浠ヤ笂鏄祻瑙堝櫒鎵搴旇揪鍒扮殑鏈灝忓瓨鍌ㄦ暟閲忥紝瓚呭嚭榪欎釜闄愬埗錛屾祻瑙堝櫒搴旇鑷姩鎸夌収鏈灝戞渶榪戣浣跨敤鐨勫師鍒欏垹闄よ秴鍑哄緱Cookie銆傜敱浜庣敤鎴鋒湁鍙兘閫氳繃MTS榪欎竴涓綉绔欑炕璇戝ぇ閲忕殑鐩爣鏈嶅姟鍣紝鍥犳嫻忚鍣ㄥ瓨鍌ㄥ湪MTS鐨刣omain涓嬬殑cookie鏁伴噺灝卞緢鏈夊彲鑳借秴榪?0涓紝榪欐椂鍊欏氨浼氬鑷存煇浜汣ookie琚垹闄ゃ備竴鑸繖涔熶笉浼氶犳垚澶ぇ闂錛屽洜涓鴻鑼冩槸瑕佹眰嫻忚鍣ㄥ垹闄ゆ渶灝戞渶榪戣浣跨敤鐨凜ookie錛屼絾鎴戜滑鍦ㄥ疄闄呮祴璇曞綋涓彂鐜版湁浜涙祻瑙堝櫒騫朵笉閬靛畧榪欐牱鐨勮鑼冿紝鑰屾槸鍒犻櫎鏈鏂扮殑Cookie錛岃繖灝卞皢瀵艱嚧鐢ㄦ埛寰堝ぇ鐨勪笉渚褲?/p>

鎬濊礬浜?/font>

絎簩縐嶆濊礬鍦ㄤ簬鎶婂師濮嬬殑Cookie緇勭粐鎴恉ataBean錛屽瓨鍌ㄥ埌鐢ㄦ埛鐨凷ession褰撲腑鍘匯傝繖鏍鳳紝鍦ㄧ敤鎴風鍙渶瑕佸瓨鍌ㄤ竴涓猄essionID鐨凜ookie錛岃屼笉闇瑕佸瓨鍌ㄦ墍鏈夌洰鏍囨湇鍔″櫒鐨勬瘡涓涓狢ookie銆傚彟澶栵紝褰撴帴鏀跺埌鐢ㄦ埛鐨勫張涓嬈$炕璇戣姹傛椂錛屽啀浠嶴ession褰撲腑鍙栧嚭鎵鏈夌殑dataBean錛岄愪竴榪涜鍒嗘瀽錛屾壘鍑轟笌鐢ㄦ埛鎵璇鋒眰鐨勭洰鏍囨湇鍔″櫒鐩哥鐨勫師濮婥ookie錛岃繘琛屾彁浜ゃ?/p>

榪欑鎬濊礬鍙互鍏嬫湇涓婁竴縐嶆濊礬涓瑿ookie瓚呰繃鏍囧噯鏁伴噺鏃剁殑緙洪櫡錛岃屼笖涓嶉渶緙栫爜淇濆瓨鍘熷鐨凜ookie灞炴у鹼紝鍑忓皯浜嗙▼搴忕殑澶嶆潅搴︺傜己鐐規槸闇瑕佺▼搴忓憳鑷繁澶勭悊expires銆傝屼笖鐢變簬鏄妸Cookie瀛樺偍鍦⊿ession涓紝涓鏃ession澶辨晥錛屾墍鏈塁ookie閮藉皢琚垹闄わ紝鎵浠ワ紝鏃犳硶淇濆瓨閭d簺闀挎湡鐨凜ookie銆?/p>

鎬諱箣錛屼袱縐嶆濊礬鍚勬湁鍒╁紛錛屽湪瀹為檯搴旂敤褰撲腑瑕佹潈琛¤冭檻銆備笅闈㈡垜浠拡瀵逛袱縐嶆濊礬榪涜鎶鏈疄鐜幫紝鍒嗗埆瀵瑰簲鏂規涓鍜屾柟妗堜簩銆?/p>

鐢變簬MTS闇瑕佷笌鐩爣鏈嶅姟鍣ㄨ繛鎺ワ紝閬靛驚HTTP鍗忚璇誨彇鍜岃繑鍥濩ookie錛屼絾鏄鏋滅敤JDK涓殑java.net.URLConnection澶勭悊Cookie灝嗛潪甯鎬笉鏂逛究錛屽洜姝ゆ垜浠嬌鐢℉TTPClient鏉ュ鐞嗕笌鐩爣鏈嶅姟鍣ㄧ殑榪炴帴銆?/p>



鍥為〉棣?/font>


鏂規涓錛欳ookie瀛樺偍鍦ㄦ祻瑙堝櫒绔?/span>

鐢ㄦ埛姣忓彂璧蜂竴嬈℃柊鐨勮姹傦紝嫻忚鍣ㄥ湪媯鏌ュ畬鏈湴瀛樺偍Cookie鐨勬湁鏁堟у悗錛屼細鎶婃墍鏈夌敱MTS浜х敓鐨勬湁鏁圕ookie闄勫姞鍦ㄨ姹傚ご閲岄佸埌MTS銆侻TS鎺ュ彈鍒板鎴風鐨勭炕璇戣姹傚悗錛屼粠Request涓彁鍙栧嚭鎵鏈夌殑Cookie錛岃繕鍘熷悗鏍規嵁鐩爣鏈嶅姟鍣ㄧ殑domain鍜宲ath榪涜榪囨護銆備駭鐢熸墍鏈変笌鐩爣鏈嶅姟鍣ㄧ浉鍏崇殑Cookie銆?/p>
//浠巖equest涓幏鍙栨墍鏈夌殑Cookie
            javax.servlet.http.Cookie[] theCookies = request.getCookies();
            ArrayList cookiesList = new ArrayList();
            String url = request.getParameter("url");
            String domain = URLUtil.getURLHost(url);
            String path = URLUtil.getPath(url);
            if (theCookies != null)
            {
            for (int i = 0; i < theCookies.length; i++)
            {
            RE r = new RE();
            //鐢ㄦ鍒欒〃杈懼紡鎶妌ame欏硅繕鍘熸垚domain錛宲ath錛宯ame
            REDebugCompiler compiler = new REDebugCompiler();
            r.setProgram(compiler.compile("\\|\\|"));
            String[] values = r.split(theCookies[i].getName());
            //"9.181.116.183||/MTModule||testCookie:value1" or " ||
            ||testCookie:value1"
            if (values.length == 3)
            {
            if (values[0].trim().startsWith("."))
            {
            if (!domain.endsWith(values[0].trim()))
            continue;
            } else if (!domain.endsWith("://" + values[0].trim()))
            continue;
            if (!path.startsWith(values[1].trim()))
            continue;
            Cookie tempCookie = new Cookie();
            tempCookie.setDomain(
            ("".equals(values[0].trim())) ? null : values[0]);
            tempCookie.setPath(
            ("".equals(values[1].trim())) ? null : values[1]);
            tempCookie.setName(
            ("".equals(values[2].trim())) ? null : values[2]);
            tempCookie.setSecure(theCookies[i].getSecure());
            tempCookie.setValue(theCookies[i].getValue());
            tempCookie.setVersion(theCookies[i].getVersion());
            tempCookie.setComment(theCookies[i].getComment());
            cookiesList.add(tempCookie);
            }
            }
            }
            //transferedCookie鐢ㄦ潵瀛樺偍灝嗚浼犲埌鐩爣鏈嶅姟鍣ㄧ殑Cookie
            Cookie[] transferedCookie = new Cookie[cookiesList.size()];
            cookiesList.toArray(transferedCookie);
            

鎺ヤ笅鏉ワ紝闇瑕佹妸Cookie閫佸埌鐩爣鏈嶅姟鍣ㄤ腑銆傛垜浠嬌鐢℉TTPClient涓庣洰鏍囨湇鍔″櫒榪炴帴銆侶TTPClient鍦ㄤ笌鐩爣鏈嶅姟鍣ㄨ繛鎺ヤ互鍚庯紝鍏佽鏈嶅姟鍣ㄨ緗瓹ookie騫跺湪闇瑕佺殑鏃跺欒嚜鍔ㄥ皢Cookie榪斿洖鏈嶅姟鍣紝涔熸敮鎸佹墜宸ヨ緗?Cookie鍚庡彂閫佸埌鏈嶅姟鍣ㄧ銆備絾鏄紝鐢變簬濡備綍澶勭悊cookie鏈夊嚑涓鑼冧簰鐩稿啿紿侊細Netscape Cookie 鑽夋銆丷FC2109銆丷FC2965錛岃屼笖榪樻湁寰堝ぇ鏁伴噺鐨勮蔣浠跺晢鐨凜ookie瀹炵幇涓嶉伒寰換浣曡鑼冦?涓轟簡澶勭悊榪欑鐘跺喌錛岄渶瑕佹妸HttpClient璁劇疆鎴怌ookie鍏煎妯″紡錛岃繖鏍峰彲浠ユ渶澶ч檺搴︾殑澶勭悊濂藉悇縐岰ookie銆備笅闈㈢殑浠g爜鎶奀ookie閫佸埌鐩爣鏈嶅姟鍣ㄣ?/p>
HttpClient client = new HttpClient();
            //浠巖equest寰楀埌鎵鏈夐渶瑕佷紶杈撶殑cookie
            Cookie[] questCookie = getCookieFromRequest(request);
            //璁劇疆HTTPClient涓篊ookie鍏煎妯″紡
            client.getState().setCookiePolicy(CookiePolicy.COMPATIBILITY);
            if (questCookie.length > 0)
            //鎶奀ookie鍔犲埌httpclient涓?
            client.getState().addCookies(questCookie);
            HttpMethod method = new GetMethod(TagerURL);
            //鍚戠洰鏍囨湇鍔″櫒鍙戦佽姹?
            int statusCode = client.executeMethod(method);
            method.releaseConnection();
            

MTS鎶婅姹傚拰Cookie閫佸嚭鍚庯紝緇х畫鎺ユ敹鐩爣鏈嶅姟鍣ㄧ殑搴旂瓟錛岃鍙栬繑鍥炵殑鍘熷Cookie錛屽茍杞崲鎴愬彲浠ュ瓨鍌ㄥ湪鐢ㄦ埛嫻忚鍣ㄧ鐨凜ookie銆備笅闈㈢殑浠g爜灝嗗鍘熷Cookie鐨勫唴瀹硅繘琛屽彉鎹紝淇濈暀expires鍜宻ecure絳夐」錛屾妸domain鍜宲ath欏圭紪鐮佸埌name涓幓銆?/p>
//浠嶩TTPClient涓彇寰楁墍鏈夌殑Cookie
            Cookie[] temp = client.getState().getCookies();
            if (temp != null)
            {
            javax.servlet.httpCookie theCookie = new javax.servlet.http.Cookie[temp.length];
            //閫愪竴瀵笴ookie榪涜澶勭悊
            for (int i = 0; i < temp.length; i++)
            {    StringBuffer sb = new StringBuffer();
            //緙栫爜鎴恉omain||path||name
            sb.append(
            temp[i].getDomain() == null ? " " : temp[i].getDomain());
            sb.append("||");
            sb.append(temp[i].getPath() == null ? " " : temp[i].getPath());
            sb.append("||");
            sb.append(temp[i].getName() == null ? " " : temp[i].getName());
            theCookie[i] =
            new Cookie(sb.toString(),temp[i].getValue());
            //澶嶅埗鍏朵粬欏?
            theCookie[i].setMaxAge(theCookie[i].getMaxAge();
            theCookie[i].setSecure(temp[i].getSecure());
            theCookie[i].setVersion(temp[i].getVersion());
            theCookie[i].setComment(temp[i].getComment());
            }
            }
            

鏈鍚庝竴姝ワ紝鎶婅繖浜汣ookie淇濆瓨鍒皉esponse閲岋紝闅廐TTP搴旂瓟澶磋繑鍥炵敤鎴鋒祻瑙堝櫒銆傚茍淇濆瓨鍦ㄦ祻瑙堝櫒涓?/p>
//鎶婃墍鏈夎漿鎹㈠悗鐨凜ookie鍔犲叆response
            for (int i = 0; i < theCookie.length; i++) {
            response.addCookie(theCookie[i]);
            }
            

鑷蟲錛屾垜浠凡緇忓畬鎴愪簡鎺ユ敹鐢ㄦ埛璇鋒眰錛岃漿鎹ookie錛屽彂閫佸埌鐩爣鏈嶅姟鍣紝鎺ユ敹鐩爣鏈嶅姟鍣ㄧ殑鍘熷Cookie錛屽茍淇濆瓨鍦ㄥ鎴鋒祻瑙堝櫒鐨勬暣涓鐞嗚繃紼嬨?/p>



鍥為〉棣?/font>


鏂規浜岋細Cookie瀛樺偍鍦ㄦ湇鍔″櫒绔?/span>

鍦ㄦ縐嶆柟妗堜腑錛岀洰鏍囨湇鍔″櫒榪斿洖緇橫TS鐨凜ookie灝嗚緇勭粐鎴恉ataBean錛屽瓨鍌ㄥ湪鐢ㄦ埛鐨凷ession涓傚洜姝わ紝鎴戜滑棣栧厛鐢熸垚涓涓敤鏉ュ瓨鍌–ookie鐨勭被CookiesBean錛屾牴鎹畠鐨勭壒鎬э紝瀹冨彲浠ョ戶鎵緼rraryList綾匯傛瀵硅薄灝嗗瓨鍌ㄧ敤鎴瘋闂洰鏍囨湇鍔″櫒鏃舵帴鏀跺埌鐨勬墍鏈塁ookie錛屽茍鎻愪緵涓庢柊鎺ユ敹鍒扮殑Cookie铻嶅悎鐨勫姛鑳斤紝鍚屾椂鑳藉鍒犻櫎榪囨湡鐨凜ookie錛屾洿鏂板悓鍚嶇殑Cookie銆?/p>
public class CookiesBean extends ArrayList
            {
            /**
            * 澶勭悊Cookies.
            * @鍙傛暟 Cookies array
            */
            public CookiesBean(Cookie[] cook)
            {
            if (cook == null)
            return;
            //add all cookie which isn't expired.
            for (int i = 0; i < cook.length; i++)
            {
            if (!cook[i].isExpired())
            {
            add(cook[i]);
            }
            }
            }
            /**
            * 铻嶅悎鍙傛暟涓殑bean
            * @鍙傛暟 bean
            * 鍙傝? rfc2109 4.3.3  Cookie Management
            */
            public void RefreshBean(CookiesBean bean)
            {
            if (bean == null)
            return;
            Iterator it = bean.iterator();
            //閽堝bean涓殑姣忎竴涓狢ookie榪涜澶勭悊
            while (it.hasNext())
            {
            Cookie beanCookie = (Cookie) it.next();
            if (beanCookie == null) continue;
            ArrayList drop = new ArrayList();
            Iterator thisIt = iterator();
            //鍙栧嚭瀛樺偍鐨凜ookie榪涜姣旇緝鍜屽鐞?
            while (thisIt.hasNext())
            {
            Cookie thisCookie = (Cookie) thisIt.next();
            if (thisCookie == null) continue;
            //姣旇緝name錛宒omain鍜宲ath,濡傛灉涓鏍風殑璇濓紝鍒欐妸姝ookie縐誨埌drop涓?
            if (CommonMethods
            .CompString(beanCookie.getName(), thisCookie.getName())
            					&& CommonMethods.CompString(
            beanCookie.getDomain(),
            thisCookie.getDomain())
            && CommonMethods.CompString(
            beanCookie.getPath(),
            thisCookie.getPath()))
            {
            drop.add(thisCookie);
            continue;
            }
            //鍒犻櫎榪囨湡鐨凜ookie
            if (thisCookie.isExpired())
            drop.add(thisCookie);
            }
            //鍒犻櫎鎵鏈塪rop涓殑Cookie
            this.removeAll(drop);
            //濡傛灉beanCookie鏈夋晥錛屽垯鍔犲叆鍒板瓨鍌ㄥ尯涓?
            if (!beanCookie.isExpired())
            add(beanCookie);
            }
            return;
            }
            }
            

褰揗TS鎺ュ彈鍒板鎴風鐨勭炕璇戣姹傚悗錛屼細浠嶴ession涓彁鍙栧嚭鎵鏈夌殑dataBean錛屽茍寰楀埌瀛樺偍鐨勬墍鏈塁ookie銆傚浠ヤ笅浠g爜錛?/p>
				CookiesBean dataBean = null;
            Cookie[] theCookies = new Cookie[0];
            ArrayList cookiesList = new ArrayList();
            //鑾峰緱Session錛屽茍鑾峰緱dataBean
            HttpSession session = request.getSession(false);
            if (session != null)
            {
            dataBean = (CookiesBean) session.getAttribute(SESSION_NAME);
            }
            else
            {
            return theCookies;
            }
            

MTS鍦ㄦ墍鏈夌殑瀛樺偍鐨凜ookie涓紝媯鏌ookie鐨凞omain銆乸ath鍜宻ecure鐨勫鹼紝絳涢夊嚭絎﹀悎鐩爣鏈嶅姟鍣ㄧ殑Cookie銆?/p>
				//鎻愬彇鐩爣鏈嶅姟鍣ㄧ殑domain鍜宲ath
            String url = context.getURL();
            String domain = URLUtil.getURLHost(url);
            String path = url.substring(domain.length());
            String cookiedomain = null;
            String cookiepath = null;
            //閫愪釜姣旇緝Cookie鐨刣omain鍜宲ath
            //鎶婄鍚堣姹傜殑Cookie綰綍鍒癱ookiesList涓?
            for (int i = 0; i < dataBean.size(); i++)
            {
            Cookie cookie = (Cookie) dataBean.get(i);
            if (cookie == null) continue;
            cookiedomain =
            (cookie.getDomain() == null) ? "" : cookie.getDomain();
            cookiepath = (cookie.getPath() == null) ? "  " : cookie.getPath();
            if (!path.startsWith(cookiepath))
            continue;
            if (cookiedomain.startsWith("."))
            {
            if (!domain.endsWith(cookiedomain))
            continue;
            }
            else if (!domain.endsWith("://" + cookiedomain))
            continue;
            if (cookie.isExpired())
            continue;
            if (cookie.getSecure() && url.toLowerCase().startsWith("http:"))
            continue;
            cookiesList.add(cookie);
            }
            theCookies = new Cookie[cookiesList.size()];
            cookiesList.toArray(theCookies);
            return theCookies;
            

鎶奀ookie閫佸埌鐩爣鏈嶅姟鍣ㄧ殑浠g爜涓庢柟妗堜竴鍩烘湰涓鏍鳳紝鍦ㄦ蹇界暐銆?/p>

鏈鍚庝竴姝ワ紝闇瑕佹妸Cookie瀛樺偍鍒癝ession涓備笅闈㈢殑浠g爜灝嗕粠鐩爣鏈嶅姟鍣ㄦ帴鍙桟ookie錛岃瀺鍏ュ埌dataBean涓紝騫朵繚瀛樺埌瀹㈡埛鐨凷ession涓?/p>
		//浠庣洰鏍囨湇鍔″櫒寰楀埌Cookie闆?
            Cookie[] cookies = client.getState().getCookies();
            CookiesBean bean = new CookiesBean(cookies);
            CookiesBean dataBean = bean;
            //鍙栧緱鐢ㄦ埛Session
            HttpSession session =  request.getSession(false);
            if (session != null)
            {
            if (session.getAttribute(SESSION_NAME) != null)
            {
            //璇誨彇Session涓瓨鍙栫殑dataBean
            dataBean = (CookiesBean) session.getAttribute(SESSION_NAME);
            //鐩爣鏈嶅姟鍣ㄧ鐨凜ookie铻嶅悎鍒癝ession涓殑dataBean涓?
            dataBean.RefreshBean(bean);
            }
            //鎶婃渶緇堢殑dataBean瀛樺叆Session涓?
            session.setAttribute(SESSION_NAME, dataBean);
            }
            

鑷蟲錛屾垜浠凡緇忓畬鎴愪簡鍦⊿ession涓繚瀛樹釜鐩爣鏈嶅姟鍣ㄦ墍浜х敓Cookie鐨勬暣涓鐞嗚繃紼嬨?/p>



鍥為〉棣?/font>


鍏充簬Session鐨勮冭檻

鍦ㄧ爺絀跺畬濡備綍綆$悊鍜屼紶閫扖ookie涔嬪悗錛屾垜浠篃闇瑕佺爺絀朵竴涓婼ession鐨勪紶閫掋傚洜涓虹洰鍓嶅ぇ閮ㄥ垎绔欑偣閮藉湪閲囩敤Session鏈哄埗淇濆瓨鐢ㄦ埛鐘舵佹暟鎹紝濡傛灉涓嶈兘瑙e喅Session鐨勪紶閫掗棶棰橈紝HTTP搴旂敤浠g悊鏈嶅姟鍣ㄧ殑閫傜敤鑼冨洿鍚屾牱浼氬ぇ鎵撴姌鎵c?/p>

棣栧厛鎴戜滑浜嗚В涓涓婼ession鐨勫疄鐜版満鍒躲係ession鏄竴縐嶆湇鍔″櫒绔殑鏈哄埗錛屾湇鍔″櫒浣跨敤涓縐嶇被浼間簬鏁e垪琛ㄧ殑緇撴瀯鏉ヤ繚瀛樹俊鎭傚綋紼嬪簭闇瑕佷負鏌愪釜瀹㈡埛绔殑璇鋒眰鍒涘緩涓涓猻ession鐨勬椂鍊欙紝鏈嶅姟鍣ㄩ鍏堟鏌ヨ繖涓鎴風鐨勮姹傞噷鏄惁宸插寘鍚簡涓涓猻ession鏍囪瘑 - 縐頒負session id錛屽鏋滃凡鍖呭惈涓涓猻ession id鍒欒鏄庝互鍓嶅凡緇忎負姝ゅ鎴風鍒涘緩榪噑ession錛屾湇鍔″櫒灝辨寜鐓ession id鎶婅繖涓猻ession媯绱㈠嚭鏉ヤ嬌鐢紙濡傛灉媯绱笉鍒幫紝鍙兘浼氭柊寤轟竴涓級錛宻ession id鐨勫煎簲璇ユ槸涓涓棦涓嶄細閲嶅錛屽張涓嶅鏄撹鎵懼埌瑙勫緥浠ヤ豢閫犵殑瀛楃涓層?/p>

淇濆瓨榪欎釜session id鐨勬柟寮忎箣涓灝辨槸閲囩敤Cookie銆備竴鑸繖涓狢ookie鐨勫悕瀛楅兘綾諱技浜?SESSIONID銆傛瘮濡俉ebSphere瀵逛簬Web搴旂敤紼嬪簭鐢熸垚鐨凜ookie錛欽SESSIONID= 0001HWF4iVD94pY8Cpbx6U4CXkf:10lro0398錛屽畠鐨勫悕瀛楀氨鏄?JSESSIONID銆?/p>

淇濆瓨session id鐨勫叾浠栨柟寮忚繕鍖呮嫭URL閲嶅啓鍜岃〃鍗曢殣钘忓瓧孌點傝繖涓ょ鏂瑰紡閮戒笉闇瑕佷唬鐞嗘湇鍔″櫒浣滅壒孌婂鐞嗐傚洜姝ゅ疄闄呬笂錛屾垜浠В鍐充簡Cookie鐨勭鐞嗗拰浼犻掔殑闂涔嬪悗錛屼篃灝辮В鍐充簡Session鐨勭鐞嗗拰浼犻掋?/p>



鍥為〉棣?/font>


緇撴潫璇?/span>

浠庝笂闈㈢殑璁ㄨ涓彲浠ョ湅鍑猴紝鐢變簬Cookie鏈韓鐨勮鑼冮檺鍒訛紝HTTP搴旂敤浠g悊鎵蹇呴渶闈㈠鐨勪竴涓棶棰樺氨鏄浣曞Cookie榪涜姝g‘鐨勫鐞嗐傛湰鏂囧姝ゆ彁鍑轟簡涓ょ瑙e喅鎬濊礬騫跺垪鍑轟簡瀹炵幇浠g爜銆傚浜嶮TS欏圭洰鏈韓錛屾垜浠嬌鐢ㄧ殑鏄浜岀鏂規銆傚紑鍙戜漢鍛樺湪璁よ瘑濂紺ookie鏈韓鐨勭壒鎬т箣鍚庯紝鍙傜収鏈枃鐨勬濊礬錛屾牴鎹嚜宸辯郴緇熺殑鐗圭偣錛屼篃浼氭壘鍑烘洿閫傚疁鐨勮В鍐蟲柟妗堛?/p>

鍙傝冭祫鏂?

  • Netscape Cookie Specification 瀵筃etscape Cookie 浣跨敤鐨勭壒鎬ц繘琛屼簡綆瑕佺殑浠嬬粛銆?br>
  • RFC2965錛欻TTP State Management Mechanism 浠嬬粛浜咹TTP 鐘舵佺鐞嗘満鍒?br>
  • RFC2109 w3c鍙戝竷鐨勭涓涓畼鏂筩ookie瑙勮寖

  • RFC2616錛欻ypertext Transfer Protocol 瓚呮枃鏈紶杈撳崗璁?br>
  • Ronald Tschalr寮鍙戜簡 HTTPClient錛屽皢鍏朵綔涓?URLConnection 鐨勬浛浠e搧銆?br>
  • Jakarta Regexp Apache 鐨勫紑婧愰」鐩紝澶勭悊姝e垯琛ㄨ揪寮忕殑java鍖呫?br>


鍏充簬浣滆?/span>

 

榛勬箻騫蟲槸涓鍚嶅伐浣滃湪IBM CSDL鐨勯珮綰ц蔣浠跺伐紼嬪笀錛屼粠1997騫村紑濮嬩粠浜嬬綉緇滃紑鍙戣璁″伐浣溿備粬瀵笿ava鐨勭綉緇滃拰Web寮鍙戞湁涓板瘜鐨勭粡楠岋紝瀵瑰簳灞傚崗璁篃鏈変竴瀹氱殑浜嗚В銆傜幇鍦ㄦ浠庝簨浜庨〉闈㈠湪綰跨炕璇戦」鐩殑寮鍙戝拰鏀寔銆備綘鍙互閫氳繃jobike@sina.com涓庨粍婀樺鉤鑱旂郴銆?/p>



doing5552 2010-10-10 22:29 鍙戣〃璇勮
]]>(杞?鎸囬拡鐨勫紩鐢紙*&錛変笌鎸囬拡鐨勬寚閽堬紙**錛?/title><link>http://www.shnenglu.com/doing5552/archive/2010/09/28/127994.html</link><dc:creator>doing5552</dc:creator><author>doing5552</author><pubDate>Tue, 28 Sep 2010 14:06:00 GMT</pubDate><guid>http://www.shnenglu.com/doing5552/archive/2010/09/28/127994.html</guid><wfw:comment>http://www.shnenglu.com/doing5552/comments/127994.html</wfw:comment><comments>http://www.shnenglu.com/doing5552/archive/2010/09/28/127994.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.shnenglu.com/doing5552/comments/commentRss/127994.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/doing5552/services/trackbacks/127994.html</trackback:ping><description><![CDATA[鍦ㄤ笅鍒楀嚱鏁板0鏄庝腑錛屼負浠涔堣<a class=vLink1 id=vad_8 onmouseover="this.style.borderBottom='2px #FF3366 solid';var fxEvent=arguments[0];kwmouseover(this,8,fxEvent);" style="FONT-SIZE: 1em; CURSOR: pointer; COLOR: #ff3366; BORDER-BOTTOM: #ff3366 1px dotted; TEXT-DECORATION: underline" onmouseout="this.style.borderBottom='1px #FF3366 dotted';kwmouseout(this,8)" target=_blank name=8>鍚屾椂</a>浣跨敤*鍜?amp;絎﹀彿錛熶互鍙婁粈涔堝満鍚堜嬌鐢ㄨ繖縐嶅0鏄庢柟寮? <br>銆銆void func1錛?MYCLASS *&pBuildingElement 錛夛紱 <br><br>銆銆璁哄潧涓粡甯告湁浜洪棶鍒拌繖鏍風殑闂銆傛湰鏂囪瘯鍥?a class=vLink1 id=vad_4 onmouseover="this.style.borderBottom='2px #FF3366 solid';var fxEvent=arguments[0];kwmouseover(this,4,fxEvent);" style="FONT-SIZE: 1em; CURSOR: pointer; COLOR: #ff3366; BORDER-BOTTOM: #ff3366 1px dotted; TEXT-DECORATION: underline" onmouseout="this.style.borderBottom='1px #FF3366 dotted';kwmouseout(this,4)" target=_blank name=4>閫氳繃</a>涓浜?a class=vLink1 id=vad_9 onmouseover="this.style.borderBottom='2px #FF3366 solid';var fxEvent=arguments[0];kwmouseover(this,9,fxEvent);" style="FONT-SIZE: 1em; CURSOR: pointer; COLOR: #ff3366; BORDER-BOTTOM: #ff3366 1px dotted; TEXT-DECORATION: underline" onmouseout="this.style.borderBottom='1px #FF3366 dotted';kwmouseout(this,9)" target=_blank name=9>瀹為檯</a>鐨勬寚閽堜嬌鐢?a class=vLink1 id=vad_7 onmouseover="this.style.borderBottom='2px #FF3366 solid';var fxEvent=arguments[0];kwmouseover(this,7,fxEvent);" style="FONT-SIZE: 1em; CURSOR: pointer; COLOR: #ff3366; BORDER-BOTTOM: #ff3366 1px dotted; TEXT-DECORATION: underline" onmouseout="this.style.borderBottom='1px #FF3366 dotted';kwmouseout(this,7)" target=_blank name=7>緇忛獙</a>鏉ヨВ閲婅繖涓棶棰樸?br>浠旂粏鐪嬩竴涓嬭繖縐嶅0鏄庢柟寮忥紝紜疄鏈夌偣璁╀漢榪鋒儜銆傚湪鏌愮鎰忎箟涓婏紝"*"鍜?&"鏄剰鎬濈浉瀵圭殑涓や釜涓滆タ錛屾妸瀹冧滑鏀懼湪涓璧鋒湁浠涔堟剰涔夊憿錛熴備負浜嗙悊瑙f寚閽堢殑榪欑鍋氭硶錛屾垜浠厛澶嶄範涓涓婥/C++緙栫▼涓棤鎵涓嶅湪鐨勬寚閽堟蹇點傛垜浠兘鐭ラ亾MYCLASS*鐨勬剰鎬濓細鎸囧悜鏌愪釜瀵硅薄鐨勬寚閽堬紝姝ゅ璞$殑綾誨瀷涓篗YCLASS銆?Void func1錛圡YCLASS *pMyClass錛夛紱 <br><br>// 渚嬪錛?MYCLASS* p = new MYCLASS錛?br>func1錛坧錛夛紱 <br>涓婇潰榪欐浠g爜鐨勮繖縐嶅鐞嗘柟娉曟兂蹇呰皝閮界敤榪囷紝鍒涘緩涓涓狹YCLASS瀵硅薄錛岀劧鍚庡皢瀹冧紶鍏unc1鍑芥暟銆傜幇鍦ㄥ亣璁炬鍑芥暟瑕佷慨鏀筽MyClass錛?void func1錛圡YCLASS *pMyClass錛?br>{<br>DoSomething錛坧MyClass錛夛紱<br>pMyClass = // 鍏跺畠瀵硅薄鐨勬寚閽?br>} <br><br>銆銆絎簩鏉¤鍙ュ湪鍑芥暟榪囩▼涓彧淇敼浜唒MyClass鐨勫箋傚茍娌℃湁淇敼璋冪敤鑰呯殑鍙橀噺p鐨勫箋?a class=vLink1 id=vad_11 onmouseover="this.style.borderBottom='2px #FF3366 solid';var fxEvent=arguments[0];kwmouseover(this,11,fxEvent);" style="FONT-SIZE: 1em; CURSOR: pointer; COLOR: #ff3366; BORDER-BOTTOM: #ff3366 1px dotted; TEXT-DECORATION: underline" onmouseout="this.style.borderBottom='1px #FF3366 dotted';kwmouseout(this,11)" target=_blank name=11>濡傛灉</a>p鎸囧悜鏌愪釜浣嶄簬鍦板潃0x008a00鐨勫璞★紝褰揻unc1榪斿洖鏃訛紝瀹冧粛鐒舵寚鍚戣繖涓壒瀹氱殑瀵硅薄銆傦紙闄ら潪func1鏈塨ug灝嗗爢寮勪貢浜嗭紝瀹屽叏鏈夎繖縐嶅彲鑳姐傦級<br><br>銆銆鐜板湪鍋囪浣犳兂瑕佸湪func1涓慨鏀筽鐨勫箋傝繖鏄綘鐨勬潈鍒┿傝皟鐢ㄨ呬紶鍏ヤ竴涓寚閽堬紝鐒跺悗鍑芥暟緇欒繖涓寚閽堣祴鍊箋備互寰涓鑸兘鏄紶鍙屾寚閽堬紝鍗蟲寚閽堢殑鎸囬拡錛屼緥濡傦紝CMyClass**銆?br><br><br>MYCLASS* p = NULL錛?br>func1錛?amp;p錛夛紱<br><br>void func1錛圡YCLASS** pMyClass錛夛紱<br>{<br>*pMyClass = new MYCLASS錛?br>……<br>}<br><br><br>銆銆璋冪敤func1涔嬪悗錛宲鎸囧悜鏂扮殑瀵硅薄銆傚湪COM緙栫▼涓紝浣犲埌澶勯兘浼氱鍒拌繖鏍風殑鐢ㄦ硶--渚嬪鍦?a class=vLink1 id=vad_5 onmouseover="this.style.borderBottom='2px #FF3366 solid';var fxEvent=arguments[0];kwmouseover(this,5,fxEvent);" style="FONT-SIZE: 1em; CURSOR: pointer; COLOR: #ff3366; BORDER-BOTTOM: #ff3366 1px dotted; TEXT-DECORATION: underline" onmouseout="this.style.borderBottom='1px #FF3366 dotted';kwmouseout(this,5)" target=_blank name=5>鏌ヨ</a>瀵硅薄鎺ュ彛鐨凲ueryInterface鍑芥暟涓細<br><br><br>interface ISomeInterface { <br>HRESULT QueryInterface錛圛ID &iid, void** ppvObj錛夛紱 <br>…… <br>}錛?<br>LPSOMEINTERFACE p=NULL錛?<br>pOb->QueryInterface錛圛ID_SOMEINTERFACE, &p錛夛紱  <br><br>銆銆姝ゅ錛宲鏄疭OMEINTERFACE綾誨瀷鐨勬寚閽堬紝鎵浠?amp;p渚挎槸鎸囬拡鐨勬寚閽堬紝鍦≦ueryInterface榪斿洖鐨勬椂鍊欙紝濡傛灉璋冪敤<a class=vLink1 id=vad_1 onmouseover="this.style.borderBottom='2px #FF3366 solid';var fxEvent=arguments[0];kwmouseover(this,1,fxEvent);" style="FONT-SIZE: 1em; CURSOR: pointer; COLOR: #ff3366; BORDER-BOTTOM: #ff3366 1px dotted; TEXT-DECORATION: underline" onmouseout="this.style.borderBottom='1px #FF3366 dotted';kwmouseout(this,1)" target=_blank name=1>鎴愬姛</a>錛屽垯鍙橀噺p鍖呭惈涓涓寚鍚戞柊鐨勬帴鍙g殑鎸囬拡銆?br><br>銆銆濡傛灉浣犵悊瑙f寚閽堢殑鎸囬拡錛岄偅涔堜綘鑲畾灝辯悊瑙f寚閽堝紩鐢紝鍥犱負瀹冧滑瀹屽叏鏄竴鍥炰簨銆傚鏋滀綘璞?a class=vLink1 id=vad_2 onmouseover="this.style.borderBottom='2px #FF3366 solid';var fxEvent=arguments[0];kwmouseover(this,2,fxEvent);" style="FONT-SIZE: 1em; CURSOR: pointer; COLOR: #ff3366; BORDER-BOTTOM: #ff3366 1px dotted; TEXT-DECORATION: underline" onmouseout="this.style.borderBottom='1px #FF3366 dotted';kwmouseout(this,2)" target=_blank name=2>涓嬮潰</a>榪欐牱澹版槑鍑芥暟錛?br><br><br>void func1錛圡YCLASS *&pMyClass錛夛紱<br>{<br>pMyClass = new MYCLASS錛?<br>……<br>} <br><br>銆銆鍏跺疄錛屽畠鍜屽墠闈㈡墍璁插緱鎸囬拡鐨勬寚閽堜緥瀛愭槸涓鐮佷簨錛屽彧鏄?a class=vLink1 id=vad_0 onmouseover="this.style.borderBottom='2px #FF3366 solid';var fxEvent=arguments[0];kwmouseover(this,0,fxEvent);" style="FONT-SIZE: 1em; CURSOR: pointer; COLOR: #ff3366; BORDER-BOTTOM: #ff3366 1px dotted; TEXT-DECORATION: underline" onmouseout="this.style.borderBottom='1px #FF3366 dotted';kwmouseout(this,0)" target=_blank name=0>璇硶</a>鏈夋墍涓嶅悓銆備紶閫掔殑鏃跺欎笉鐢ㄤ紶p鐨勫湴鍧&p錛岃屾槸鐩存帴浼爌鏈韓錛?br><br>銆銆MYCLASS* p = NULL錛?br>銆銆func1錛坧錛夛紱<br><br>銆銆鍦ㄨ皟鐢ㄤ箣鍚庯紝p鎸囧悜涓涓柊鐨勫璞°備竴鑸潵璁詫紝寮曠敤鐨勫師鐞嗘垨澶氭垨灝戝氨璞′竴涓寚閽堬紝浠庤娉曚笂鐪嬪畠灝辨槸涓涓櫘閫氬彉閲忋傛墍浠ュ彧瑕佷綘紕板埌*&錛屽氨搴旇鎯沖埌**銆備篃灝辨槸璇磋繖涓嚱鏁頒慨鏀規垨鍙兘淇敼璋冪敤鑰呯殑鎸囬拡錛岃岃皟鐢ㄨ呰薄鏅氬彉閲忎竴鏍蜂紶閫掕繖涓寚閽堬紝涓嶄嬌鐢ㄥ湴鍧鎿嶄綔絎?amp;銆?br><br>銆銆鑷充簬璇翠粈涔堝満鍚堣浣跨敤榪欑鏂規硶錛屾垜浼氳錛屾瀬灝戙侻FC鍦ㄥ叾闆嗗悎綾諱腑鐢ㄥ埌浜嗗畠--渚嬪錛孋ObList錛屽畠鏄竴涓狢objects鎸囬拡鍒楄〃銆?br><br><br><br>Class CObList : public Cobject {<br>……<br><br>// 鑾峰彇/淇敼鎸囧畾浣嶇疆鐨勫厓绱?br>Cobject*& GetAt錛圥OSITION position錛夛紱<br>Cobject* GetAt錛圥OSITION position錛?const錛?br>}錛?br><br><br>銆銆榪欓噷鏈変袱涓狦etAt鍑芥暟錛屽姛鑳介兘鏄幏鍙栫粰瀹氫綅緗殑鍏冪礌銆傚尯鍒綍鍦ㄥ憿錛?br><br>銆銆鍖哄埆鍦ㄤ簬涓涓浣犱慨鏀瑰垪琛ㄤ腑鐨勫璞★紝鍙︿竴涓垯涓嶈銆傛墍浠ュ鏋滀綘鍐欐垚涓嬮潰榪欐牱錛?Cobject* pObj = mylist.GetAt錛坧os錛夛紱<br><br>銆銆鍒檖Obj鏄垪琛ㄤ腑鏌愪釜瀵硅薄鐨勬寚閽堬紝濡傛灉鎺ョ潃<a class=vLink1 id=vad_3 onmouseover="this.style.borderBottom='2px #FF3366 solid';var fxEvent=arguments[0];kwmouseover(this,3,fxEvent);" style="FONT-SIZE: 1em; CURSOR: pointer; COLOR: #ff3366; BORDER-BOTTOM: #ff3366 1px dotted; TEXT-DECORATION: underline" onmouseout="this.style.borderBottom='1px #FF3366 dotted';kwmouseout(this,3)" target=_blank name=3>鏀瑰彉</a>pObj鐨勫鹼細 pObj = pSomeOtherObj錛?br><br>銆銆榪欏茍鏀瑰彉涓嶄簡鍦ㄤ綅緗畃os澶勭殑瀵硅薄鍦板潃錛岃屼粎浠呮槸鏀瑰彉浜嗗彉閲弍Obj銆備絾鏄紝濡傛灉浣犲啓鎴愪笅闈㈣繖鏍鳳細 Cobject*& rpObj = mylist.GetAt錛坧os錛夛紱<br><br>銆銆鐜板湪錛宺pObj鏄紩鐢ㄤ竴涓垪琛ㄤ腑鐨勫璞$殑鎸囬拡錛屾墍浠ュ綋鏀瑰彉rpObj鏃訛紝涔熶細鏀瑰彉鍒楄〃涓綅緗畃os澶勭殑瀵硅薄鍦板潃--鎹㈠彞璇濊錛屾浛浠d簡榪欎釜瀵硅薄銆傝繖灝辨槸涓轟粈涔圕ObList浼氭湁涓や釜GetAt鍑芥暟鐨勭紭鏁呫備竴涓彲浠ヤ慨鏀規寚閽堢殑鍊鹼紝鍙︿竴涓垯涓嶈兘銆傛敞鎰忔垜鍦ㄦ璇寸殑鏄寚閽堬紝涓嶆槸瀵硅薄鏈韓銆傝繖涓や釜鍑芥暟閮藉彲浠ヤ慨鏀瑰璞★紝浣嗗彧鏈?&鐗堟湰鍙互鏇夸唬瀵硅薄銆?<br><br>銆銆鍦–/C++涓紩鐢ㄦ槸寰堥噸瑕佺殑錛屽悓鏃朵篃鏄珮鏁堢殑澶勭悊鎵嬫銆傛墍浠ヨ鎯蟲垚涓篊/C++楂樻墜錛屽寮曠敤鐨勬蹇墊病鏈夐忓交鐨勭悊瑙e拰鐔熺粌鐨勫簲鐢ㄦ槸涓嶈鐨勩? <img src ="http://www.shnenglu.com/doing5552/aggbug/127994.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/doing5552/" target="_blank">doing5552</a> 2010-09-28 22:06 <a href="http://www.shnenglu.com/doing5552/archive/2010/09/28/127994.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>緇嗚HTML鍏冪礌鐨処D鍜孨ame灞炴х殑鍖哄埆http://www.shnenglu.com/doing5552/archive/2010/09/22/127323.htmldoing5552doing5552Wed, 22 Sep 2010 02:39:00 GMThttp://www.shnenglu.com/doing5552/archive/2010/09/22/127323.htmlhttp://www.shnenglu.com/doing5552/comments/127323.htmlhttp://www.shnenglu.com/doing5552/archive/2010/09/22/127323.html#Feedback0http://www.shnenglu.com/doing5552/comments/commentRss/127323.htmlhttp://www.shnenglu.com/doing5552/services/trackbacks/127323.html
    涓婂懆鎴戜篃閬囧埌浜咺D鍜孨ame鐨勯棶棰橈紝鍦ㄩ〉闈㈤噷杈撳叆浜嗕竴涓猧nput type="hidden"錛屽彧鍐欎簡涓涓狪D='SliceInfo'錛岃祴鍊煎悗submit錛屽湪鍚庡彴鐢≧equest.Params["SliceInfo"]鍗存庝箞涔熷幓涓嶅埌鍊?img height=19 src="http://www2.cnblogs.com/Emoticons/emdgust.gif" width=19 border=0>銆傚悗鏉ユ亶鐒跺ぇ鎮熷洜璇ョ敤Name鏉ユ爣紺猴紝浜庢槸鍦╥nput閲屽姞浜嗕釜Name='SliceInfo'錛屽氨涓鍒噊k浜嗐?br>
    絎竴孌甸噷瀵逛簬ID鍜孨ame鐨勮В絳旇鐨勫お絎肩粺浜嗭紝褰撶劧閭d釜瑙i噴瀵逛簬ID鏉ヨ鏄畬鍏ㄥ鐨勶紝瀹冨氨鏄疌lient绔疕TML鍏冪礌鐨処dentity銆傝孨ame鍏跺疄瑕佸鏉傜殑澶氾紝鍥犱負Name鏈夊緢澶氱鐨勭敤閫旓紝鎵浠ュ畠騫朵笉鑳藉畬鍏ㄧ敱ID鏉ヤ唬鏇匡紝浠庤屽皢鍏跺彇娑堟帀銆傚叿浣撶敤閫旀湁錛?br>
    鐢ㄩ?: 浣滀負鍙笌鏈嶅姟鍣ㄤ氦浜掓暟鎹殑HTML鍏冪礌鐨勬湇鍔″櫒绔殑鏍囩ず錛屾瘮濡俰nput銆乻elect銆乼extarea銆佸拰button絳夈傛垜浠彲浠ュ湪鏈嶅姟鍣ㄧ鏍規嵁鍏禢ame閫氳繃Request.Params鍙栧緱鍏冪礌鎻愪氦鐨勫箋?br>    鐢ㄩ?: HTML鍏冪礌Input type='radio'鍒嗙粍錛屾垜浠煡閬搑adio button鎺т歡鍦ㄥ悓涓涓垎緇勭被錛宑heck鎿嶄綔鏄痬utex鐨勶紝鍚屼竴鏃墮棿鍙兘閫変腑涓涓猺adio錛岃繖涓垎緇勫氨鏄牴鎹浉鍚岀殑Name灞炴ф潵瀹炵幇鐨勩?br>    鐢ㄩ?: 寤虹珛欏甸潰涓殑閿氱偣錛屾垜浠煡閬?lt;a href="URL">link</a>鏄幏寰椾竴涓〉闈㈣秴綰ч摼鎺ワ紝濡傛灉涓嶇敤href灞炴э紝鑰屾敼鐢∟ame錛屽錛?lt;a name="PageBottom"></a>錛屾垜浠氨鑾峰緱浜嗕竴涓〉闈㈤敋鐐廣?br>    鐢ㄩ?: 浣滀負瀵硅薄鐨処dentity錛屽Applet銆丱bject銆丒mbed絳夊厓绱犮傛瘮濡傚湪Applet瀵硅薄瀹炰緥涓紝鎴戜滑灝嗕嬌鐢ㄥ叾Name鏉ュ紩鐢ㄨ瀵硅薄銆?br>    鐢ㄩ?: 鍦↖MG鍏冪礌鍜孧AP鍏冪礌涔嬮棿鍏寵仈鐨勬椂鍊欙紝濡傛灉瑕佸畾涔塈MG鐨勭儹鐐瑰尯鍩燂紝闇瑕佷嬌鐢ㄥ叾灞炴semap錛屼嬌usemap="#name"(琚叧鑱旂殑MAP鍏冪礌鐨凬ame)銆?br>    鐢ㄩ?: 鏌愪簺鐗瑰畾鍏冪礌鐨勫睘鎬э紝濡俛ttribute錛宮eta鍜宲aram銆備緥濡備負Object瀹氫箟鍙傛暟<PARAM NAME = "appletParameter" VALUE = "value">鎴朚eta涓?lt;META NAME = "Author" CONTENT = "Dave Raggett">銆?br>
    鏄劇劧榪欎簺鐢ㄩ旈兘涓嶆槸鑳界畝鍗曠殑浣跨敤ID鏉ヤ唬鏇挎帀鐨勶紝鎵浠TML鍏冪礌鐨処D鍜孨ame鐨勫嵈鍒茍涓嶆槸韜喚璇佸彿鐮佸拰濮撳悕榪欐牱鐨勫尯鍒紝瀹冧滑鏇存湰灝辨槸涓嶅悓浣滅敤鐨勪笢瑗褲?br>
    褰撶劧HTML鍏冪礌鐨凬ame灞炴у湪欏甸潰涓篃鍙互璧烽偅涔堜竴鐐笽D鐨勪綔鐢紝鍥犱負鍦―HTML瀵硅薄鏍戜腑錛屾垜浠彲浠ヤ嬌鐢╠ocument.getElementsByName鏉ヨ幏鍙栦竴涓寘鍚〉闈腑鎵鏈夋寚瀹歂ame鍏冪礌鐨勫璞℃暟緇勩侼ame灞炴ц繕鏈変竴涓棶棰橈紝褰撴垜浠姩鎬佸垱寤哄彲鍖呭惈Name灞炴х殑鍏冪礌鏃訛紝涓嶈兘綆鍗曠殑浣跨敤璧嬪糴lement.name = "..."鏉ユ坊鍔犲叾Name錛岃屽繀欏誨湪鍒涘緩Element鏃訛紝浣跨敤document.createElement('<element name = "myName"></element>')涓哄厓绱犳坊鍔燦ame灞炴с傝繖鏄粈涔堟剰鎬濆晩錛熺湅涓嬮潰鐨勪緥瀛愬氨鏄庣櫧浜嗐?
<script language="JavaScript">
var input = document.createElement('INPUT');
input.id 
= 'myId';
input.name 
= 'myName';
alert(input.outerHTML);
</script>

    娑堟伅妗嗛噷鏄劇ず鐨勭粨鏋滄槸錛?lt;INPUT id=myId>銆?/p>

<script language="JavaScript">
var input = document.createElement('<INPUT name="myName">');
input.id 
= 'myId';
alert(input.outerHTML);
</script>

    娑堟伅妗嗛噷鏄劇ず鐨勭粨鏋滄槸錛?lt;INPUT id=myId name=myName>銆?br>    鍒濆鍖朜ame灞炴х殑榪欎釜璁捐涓嶆槸IE鐨勭己闄鳳紝鍥犱負MSDN閲岃浜嗚榪欎箞鍋氱殑錛屽彲鏄繖鏍瘋璁$殑鍘熺悊浠涔堝憿錛熸垜鏆傛椂娌℃湁鎯沖お鏄庣櫧銆?br>
    榪欓噷鍐嶉『渚胯涓涓嬶紝瑕佹槸欏甸潰涓湁n(n>1)涓狧TML鍏冪礌鐨処D閮界浉鍚屼簡鎬庝箞鍔烇紵鍦―HTML瀵硅薄涓庝箞寮曠敤浠栦滑鍛紵濡傛灉鎴戜滑浣跨敤ASPX欏甸潰錛岃繖鏍風殑鎯呭喌鏄笉瀹規槗鍙戠敓鐨勶紝鍥犱負aspnet榪涚▼鍦ㄥ鐞哸spx欏甸潰鏃舵牴鏈氨涓嶅厑璁告湁ID闈炲敮涓錛岃繖鏄〉闈細琚姏鍑哄紓甯歌屼笉鑳借姝e父鐨剅ender銆傝鏄笉鏄姩鎬侀〉闈紝鎴戜滑紜璁㊣D閲嶅閭E鎬庝箞鎼炲憿錛熻繖涓椂鍊欐垜浠繕鏄彲浠ョ戶緇嬌鐢╠ocument.getElementById鑾峰彇瀵硅薄錛屽彧涓嶈繃鎴戜滑鍙兘鑾峰彇ID閲嶅鐨勯偅浜涘璞′腑鍦℉TML Render鏃剁涓涓嚭鐜扮殑瀵硅薄銆傝岃繖鏃墮噸澶嶇殑ID浼氬湪寮曠敤鏃惰嚜鍔ㄥ彉鎴愪竴涓暟緇勶紝ID閲嶅鐨勫厓绱犳寜Render鐨勯『搴忎緷嬈″瓨鍦ㄤ簬鏁扮粍涓?br>



doing5552 2010-09-22 10:39 鍙戣〃璇勮
]]>
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
              欧美日韩dvd在线观看| 欧美一级片久久久久久久| 久久激情综合网| 亚洲伊人色欲综合网| 国产精品美女www爽爽爽| 午夜性色一区二区三区免费视频| 亚洲综合成人婷婷小说| 韩国精品在线观看| 欧美不卡一卡二卡免费版| 老鸭窝亚洲一区二区三区| 亚洲美女av网站| 在线一区二区三区做爰视频网站| 国产美女精品人人做人人爽| 久久五月激情| 欧美精品免费在线观看| 香蕉久久夜色精品国产使用方法| 欧美一区2区视频在线观看| 亚洲电影免费| av成人毛片| 禁久久精品乱码| 亚洲毛片一区二区| 国内精品美女在线观看| 亚洲国产欧美一区二区三区久久| 欧美成人视屏| 欧美一区二区三区另类| 欧美成人免费在线视频| 欧美一区二区三区精品| 免费观看30秒视频久久| 午夜精品一区二区三区在线| 噜噜噜91成人网| 激情一区二区三区| 一区二区三区四区五区在线| 日韩午夜电影| 精东粉嫩av免费一区二区三区| 亚洲国产免费| 国产一区二区三区四区hd| 亚洲日本免费电影| 黄色在线一区| 亚洲小视频在线| 亚洲巨乳在线| 久久久久久黄| 久久久久久久久久久久久9999| 欧美日韩国产不卡| 欧美高清在线观看| 好吊一区二区三区| 欧美一级片一区| 亚洲欧美日韩精品久久久久| 欧美人在线观看| 欧美大色视频| 亚洲大片av| 久久精品国产免费看久久精品| 亚洲免费在线视频| 欧美日韩中文字幕精品| 亚洲人成在线影院| 亚洲精品视频一区| 欧美成人蜜桃| 亚洲第一区在线观看| 亚洲第一黄网| 久久夜色精品| 欧美大香线蕉线伊人久久国产精品| 国产在线观看精品一区二区三区 | 狠狠色狠狠色综合人人| 亚洲欧美视频| 性欧美办公室18xxxxhd| 国产精品亚洲а∨天堂免在线| 一区二区三区免费网站| 亚洲欧美日韩精品久久奇米色影视| 欧美性开放视频| 亚洲视频在线二区| 欧美一区二区三区视频在线| 国产嫩草一区二区三区在线观看| 亚洲欧美日产图| 久久精品国产精品亚洲| 精品va天堂亚洲国产| 久久久久欧美精品| 欧美黄色成人网| 99在线精品视频在线观看| 欧美日韩伊人| 性高湖久久久久久久久| 久久午夜精品| 亚洲三级色网| 国产精品99免费看 | 亚洲国产美女久久久久| 一区二区三区成人| 国产精品一区二区三区久久| 欧美一区午夜视频在线观看| 美女视频一区免费观看| 亚洲美女尤物影院| 国产精品视频自拍| 久久久999成人| 亚洲毛片在线观看.| 欧美专区亚洲专区| 最新高清无码专区| 欧美午夜无遮挡| 久久久久久久成人| 亚洲乱码精品一二三四区日韩在线 | 日韩写真在线| 国产精品天美传媒入口| 久久综合狠狠综合久久综青草| 91久久国产综合久久| 欧美与黑人午夜性猛交久久久| 在线免费观看欧美| 国产精品久久久久免费a∨| 久久国产精品久久精品国产 | 亚洲欧美日韩人成在线播放| 一区二区视频免费在线观看| 欧美三级小说| 久久久久久一区二区| 夜夜嗨av色一区二区不卡| 久久久在线视频| 亚洲欧美国产视频| 亚洲精品乱码久久久久久日本蜜臀 | 国产精品夫妻自拍| 久热精品视频在线| 午夜精品影院在线观看| 亚洲伦理中文字幕| 欧美国产在线电影| 久久久久成人精品免费播放动漫| 一区二区三区欧美激情| 亚洲国产精品成人综合| 国产一区二区成人久久免费影院| 欧美日韩亚洲综合在线| 蜜臀99久久精品久久久久久软件| 午夜在线精品偷拍| 亚洲视频电影在线| 亚洲日本在线观看| 亚洲成人自拍视频| 老司机精品福利视频| 欧美自拍偷拍| 欧美亚洲日本国产| 亚洲一区二区不卡免费| 99精品免费| 99综合在线| 日韩一级不卡| 日韩午夜电影在线观看| 亚洲激情亚洲| 亚洲肉体裸体xxxx137| 亚洲国产91| 亚洲国产一二三| 亚洲国产一区二区在线| 在线观看视频一区二区| 狠狠综合久久| 亚洲国产成人一区| 亚洲国产专区校园欧美| 亚洲青涩在线| 99国产精品久久久| 一区二区三区高清在线观看| 日韩网站在线观看| 亚洲直播在线一区| 午夜一区不卡| 久久精品主播| 欧美 日韩 国产在线| 欧美黄色一区二区| 亚洲欧洲三级电影| 日韩午夜激情| 亚洲欧美国产日韩中文字幕| 性视频1819p久久| 久久九九久久九九| 欧美激情一区二区三区在线| 欧美日韩国产免费| 国产精品资源在线观看| 国语自产偷拍精品视频偷 | 欧美性猛交xxxx乱大交退制版| 欧美色区777第一页| 久久久av毛片精品| 免费欧美在线| 欧美日韩精品一区二区在线播放 | 欧美精选一区| 国产精品久久久久久模特| 激情亚洲网站| 一区二区三区久久精品| 久久久久青草大香线综合精品| 欧美不卡视频| 亚洲综合精品一区二区| 久久久亚洲精品一区二区三区| 欧美大色视频| 国产视频亚洲| 亚洲老司机av| 久久久精品动漫| 日韩性生活视频| 久久精品91久久香蕉加勒比 | 久久露脸国产精品| 欧美视频在线观看视频极品| 精品99视频| 亚洲欧美综合v| 欧美激情一区二区三级高清视频| 亚洲视频你懂的| 欧美不卡视频| 国内精品久久久久影院色| 中文在线不卡视频| 免播放器亚洲一区| 午夜精品短视频| 欧美日韩福利| 亚洲黄色大片| 久久精品视频网| 在线视频欧美日韩| 能在线观看的日韩av| 国产一区二区看久久| 亚洲欧美美女| 亚洲九九九在线观看|