锘??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品久久久久…,久久99中文字幕久久,久久影院综合精品http://www.shnenglu.com/Csystemthink/category/6397.html鐢熸椿鐨勫ぉ騫蟲湰涓嶅鉤琛★紝鍙湁閫氳繃鍔姏鏀瑰彉鍏跺亸鍚憕zh-cnTue, 20 May 2008 02:54:51 GMTTue, 20 May 2008 02:54:51 GMT60瀛楄妭瀵歸綈璇﹁Вhttp://www.shnenglu.com/Csystemthink/archive/2008/04/10/46773.htmlsnailsnailThu, 10 Apr 2008 12:47:00 GMThttp://www.shnenglu.com/Csystemthink/archive/2008/04/10/46773.htmlhttp://www.shnenglu.com/Csystemthink/comments/46773.htmlhttp://www.shnenglu.com/Csystemthink/archive/2008/04/10/46773.html#Feedback0http://www.shnenglu.com/Csystemthink/comments/commentRss/46773.htmlhttp://www.shnenglu.com/Csystemthink/services/trackbacks/46773.html闃呰鍏ㄦ枃

snail 2008-04-10 20:47 鍙戣〃璇勮
]]>
C++_Interview_Questions錛?錛?/title><link>http://www.shnenglu.com/Csystemthink/archive/2008/04/08/46529.html</link><dc:creator>snail</dc:creator><author>snail</author><pubDate>Tue, 08 Apr 2008 09:27:00 GMT</pubDate><guid>http://www.shnenglu.com/Csystemthink/archive/2008/04/08/46529.html</guid><wfw:comment>http://www.shnenglu.com/Csystemthink/comments/46529.html</wfw:comment><comments>http://www.shnenglu.com/Csystemthink/archive/2008/04/08/46529.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.shnenglu.com/Csystemthink/comments/commentRss/46529.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Csystemthink/services/trackbacks/46529.html</trackback:ping><description><![CDATA[<div> <p><font size=2>1.鏄笉鏄竴涓埗綾誨啓浜嗕竴涓獀irtual 鍑芥暟錛屽鏋滃瓙綾昏鐩栧畠鐨勫嚱鏁頒笉鍔爒irtual ,涔熻兘瀹炵幇澶氭?</font></p> <p><font size=2>virtual淇グ絎︿細(xì)琚殣褰㈢戶鎵跨殑銆?/font><font size=2>private 涔熻闆嗘垚錛屽彧浜嬫淳鐢熺被娌℃湁璁塊棶鏉冮檺鑰屽凡銆?/font><font size=2>virtual鍙姞鍙笉鍔犮?/font><font size=2>瀛愮被鐨勭┖闂撮噷鏈夌埗綾葷殑鎵鏈夊彉閲?static闄ゅ)銆?/font><font size=2>鍚屼竴涓嚱鏁板彧瀛樺湪涓涓疄浣?inline闄ゅ)銆?/font><font size=2>瀛愮被瑕嗙洊瀹冪殑鍑芥暟涓嶅姞virtual ,涔熻兘瀹炵幇澶氭併?/font><font size=2>鍦ㄥ瓙綾葷殑絀洪棿閲岋紝鏈夌埗綾葷殑縐佹湁鍙橀噺銆傜鏈夊彉閲忎笉鑳界洿鎺ヨ闂?/font></p> <p><br><font size=2>--------------------------------------------------------------------------<br>2.杈撳叆涓涓瓧絎︿覆錛屽皢鍏墮嗗簭鍚庤緭鍑恒傦紙浣跨敤C++錛屼笉寤鴻鐢ㄤ吉鐮侊級</font></p> <p><font size=2>#include <iostream><br>using namespace std;</font></p> <p><br><font size=2>void main()<br>{<br>  char a[50];memset(a,0,sizeof(a));<br>  int i=0,j;<br>  char t;<br>  cin.getline(a,50,'\n');<br>  for(i=0,j=strlen(a)-1;i<strlen(a)/2;i++,j--)<br>  {<br>   t=a[i];<br>      a[i]=a[j];<br>   a[j]=t;<br>  }<br>  cout<<a<<endl;  <br>}</font></p> <p><font size=2>鏂規(guī)硶榪樻湁寰堝銆?/font><br><font size=2>--------------------------------------------------------------------------<br>3.璇風(fēng)畝鍗曟弿榪癢indows鍐呭瓨綆$悊鐨勬柟娉曘?/font></p> <p><font size=2>鍐呭瓨綆$悊鏄搷浣滅郴緇熶腑鐨勯噸瑕侀儴鍒嗭紝涓や笁鍙ヨ瘽鎭愭曡皝涔熻涓嶆竻妤氬惂锝烇綖<br>鎴戝厛璇翠釜澶ф錛屽笇鏈涜兘澶熸姏鐮栧紩鐜夊惂</font></p> <p><font size=2>褰撶▼搴忚繍琛屾椂闇瑕佷粠鍐呭瓨涓鍑鴻繖孌電▼搴忕殑浠g爜銆備唬鐮佺殑浣嶇疆蹇呴』鍦ㄧ墿鐞嗗唴瀛樹腑鎵嶈兘琚繍琛岋紝鐢變簬鐜板湪鐨勬搷浣滅郴緇熶腑鏈夐潪甯稿鐨勭▼搴忚繍琛岀潃錛屽唴瀛樹腑涓嶈兘澶熷畬鍏ㄦ斁涓嬶紝鎵浠ュ紩鍑轟簡铏氭嫙鍐呭瓨鐨勬蹇點傛妸鍝簺涓嶅父鐢ㄧ殑紼嬪簭鐗囨柇灝辨斁鍏ヨ櫄鎷熷唴瀛橈紝褰撻渶瑕佺敤鍒板畠鐨勬椂鍊欏湪load鍏ヤ富瀛橈紙鐗╃悊鍐呭瓨錛変腑銆傝繖涓氨鏄唴瀛樼鐞嗘墍瑕佸仛鐨勪簨銆傚唴瀛樼鐞嗚繕鏈夊彟澶栦竴浠朵簨闇瑕佸仛錛氳綆楃▼搴忕墖孌靛湪涓誨瓨涓殑鐗╃悊浣嶇疆錛屼互渚緾PU璋冨害銆?/font></p> <p><font size=2>鍐呭瓨綆$悊鏈夊潡寮忕鐞嗭紝欏靛紡綆$悊錛屾寮忓拰孌甸〉寮忕鐞嗐傜幇鍦ㄥ父鐢ㄦ欏靛紡綆$悊</font></p> <p><font size=2>鍧楀紡綆$悊錛氭妸涓誨瓨鍒嗕負(fù)涓澶у潡銆佷竴澶у潡鐨勶紝褰撴墍闇鐨勭▼搴忕墖鏂笉鍦ㄤ富瀛樻椂灝卞垎閰嶄竴鍧椾富瀛樼┖闂達(dá)紝鎶婄▼ 搴忕墖鏂璴oad鍏ヤ富瀛橈紝灝辯畻鎵闇鐨勭▼搴忕墖搴﹀彧鏈夊嚑涓瓧鑺備篃鍙兘鎶婅繖涓鍧楀垎閰嶇粰瀹冦傝繖鏍蜂細(xì)閫犳垚寰堝ぇ鐨勬氮璐癸紝騫沖潎嫻垂浜?0錛呯殑鍐呭瓨絀洪棿錛屼絾鏃舵槗浜庣鐞嗐?/font></p> <p><font size=2>欏靛紡綆$悊錛氭妸涓誨瓨鍒嗕負(fù)涓欏典竴欏電殑錛屾瘡涓欏電殑絀洪棿瑕佹瘮涓鍧椾竴鍧楃殑絀洪棿灝忓緢澶氾紝鏄劇劧榪欑鏂規(guī)硶鐨勭┖闂村埄鐢ㄧ巼瑕佹瘮鍧楀紡綆$悊楂樺緢澶氥?/font></p> <p><font size=2>孌靛紡綆$悊錛氭妸涓誨瓨鍒嗕負(fù)涓孌典竴孌電殑錛屾瘡涓孌電殑絀洪棿鍙堣姣斾竴欏典竴欏電殑絀洪棿灝忓緢澶氾紝榪欑鏂規(guī)硶鍦ㄧ┖闂村埄鐢ㄧ巼涓婂張姣旈〉寮忕鐞嗛珮寰堝錛屼絾鏄篃鏈夊彟澶栦竴涓己鐐廣備竴涓▼搴忕墖鏂彲鑳戒細(xì)琚垎涓哄嚑鍗佹錛岃繖鏍峰緢澶氭椂闂村氨浼?xì)琚珛躬璐瑰湪璁〗帡姣忎竴孌電殑鐗╃悊鍦板潃涓婏紙璁$畻鏈烘渶鑰楁椂闂寸殑澶у閮界煡閬撴槸I/O鍚э級銆?/font></p> <p><font size=2>孌甸〉寮忕鐞嗭細(xì)緇撳悎浜嗘寮忕鐞嗗拰欏靛紡綆$悊鐨勪紭鐐廣傛妸涓誨瓨鍒嗕負(fù)鑻ュ共欏碉紝姣忎竴欏靛張鍒嗕負(fù)鑻ュ共孌點傚ソ澶勫氨寰堟槑鏄撅紝涓嶇敤鎴戝璇翠簡鍚с?/font></p> <p><font size=2>鍚勭鍐呭瓨綆$悊閮芥湁瀹冭嚜宸辯殑鏂規(guī)硶鏉ヨ綆楀嚭紼嬪簭鐗囨柇鍦ㄤ富瀛樹腑鐨勭墿鐞嗗湴鍧錛屽叾瀹為兘寰堢浉浼箋?/font></p> <p><font size=2>榪欏彧鏄竴涓ぇ姒傝屽凡錛屼笉瓚充互璇存槑鍐呭瓨綆$悊鐨勭毊姣涖傛棤璁哄摢涓鏈搷浣滅郴緇熶功涓婇兘鏈夎緇嗙殑璁茶В</font></p> <p><br><font size=2>--------------------------------------------------------------------------<br>4.<br>#include "stdafx.h"<br>#define SQR(X) X*X</font></p> <p><font size=2>int main(int argc, char* argv[])<br>{<br> int a = 10;<br> int k = 2;<br> int m = 1;</font></p> <p><font size=2> a /= SQR(k+m)/SQR(k+m); <br> printf("%d\n",a); </font></p> <p><font size=2> return 0;<br>}<br>榪欓亾棰樼洰鐨勭粨鏋滄槸浠涔堝晩?</font></p> <p><font size=2>define 鍙槸瀹氫箟鑰屽凡錛屽湪緙栨嫨鏃跺彧鏄畝鍗曚唬鎹*X鑰屽凡錛屽茍涓嶇粡榪囩畻鏈硶鍒欑殑</font></p> <p><font size=2>a /= (k+m)*(k+m)/(k+m)*(k+m);<br>=>a /= (k+m)*1*(k+m);<br>=>a = a/9;<br>=>a = 1;</font></p> <p><font size=2>--------------------------------------------------------------------------<br>5.<br>const 絎﹀彿甯擱噺錛?br>(1)const char *p<br>(2)char const *p<br>(3)char * const p<br>璇存槑涓婇潰涓夌鎻忚堪鐨勫尯鍒紱</font></p> <p><br><font size=2>濡傛灉const浣嶄簬鏄熷彿鐨勫乏渚э紝鍒檆onst灝辨槸鐢ㄦ潵淇グ鎸囬拡鎵鎸囧悜鐨勫彉閲忥紝鍗蟲寚閽堟寚鍚戜負(fù)甯擱噺錛?br>濡傛灉const浣嶄簬鏄熷彿鐨勫彸渚э紝const灝辨槸淇グ鎸囬拡鏈韓錛屽嵆鎸囬拡鏈韓鏄父閲忋?/font></p> <p><font size=2>(1)const char *p</font></p> <p><font size=2>涓涓寚鍚慶har綾誨瀷鐨刢onst瀵硅薄鎸囬拡錛宲涓嶆槸甯擱噺,鎴戜滑鍙互淇敼p鐨勫鹼紝浣垮叾鎸囧悜涓嶅悓鐨刢har錛屼絾鏄笉鑳芥敼鍙樺畠鎸囧悜闈瀋har瀵硅薄錛屽錛?br>const char *p;<br>char c1='a';<br>char c2='b';<br>p=&c1;//ok<br>p=&c2;//ok<br>*p=c1;//error</font></p> <p><font size=2>(2)char const *p<br></font></p> <font size=2> <p><font size=2>1)2)鏄竴鏍風(fēng)殑錛屾鏃?p鍙互淇敼錛岃宲涓嶈兘淇敼銆俻涓篶onst pointer.鍗蟲寚鍚慶onst 瀵硅薄鐨勬寚閽堬紝瀵硅薄鍙銆?/font><br>(3)char * const p<br></p> <p>甯擱噺鎸囬拡錛屾寚閽堟湰韜墍鎸囧悜鐨勫湴鍧涓嶅彲鏀瑰彉銆?/p> </font> <p><font size=2>(4)const char * const p<br>榪欑鏄湴鍧鍙?qiáng)鎸囧悜瀵硅薄閮戒笉鑳戒慨鏀广?/font></p> <p><font size=2>--------------------------------------------------------------------------<br>6.涓嬮潰鏄疌璇█涓袱縐峣f璇彞鍒ゆ柇鏂瑰紡銆傝闂摢縐嶅啓娉曟洿濂斤紵涓轟粈涔堬紵<br> int n;<br> if (n == 10) // 絎竴縐嶅垽鏂柟寮?br> if (10 == n) // 絎簩縐嶅垽鏂柟寮?/font></p> <p><font size=2>濡傛灉灝戜簡涓?鍙?緙栬瘧鏃跺氨浼?xì)鎶ラ?鍑忓皯浜嗗嚭閿欑殑鍙兘琛?鍙互媯嫻嬪嚭鏄惁灝戜簡=</font></p> <p><font size=2>--------------------------------------------------------------------------<br>7.涓嬮潰鐨勪唬鐮佹湁浠涔堥棶棰橈紵<br>void DoSomeThing(...)<br>{<br> char* p;<br> ...<br> p = malloc(1024);  // 鍒嗛厤1K鐨勭┖闂?br> if (NULL == p)<br>  return;<br> ...<br> p = realloc(p, 2048); // 絀洪棿涓嶅錛岄噸鏂板垎閰嶅埌2K<br> if (NULL == p)<br>  return;<br> ...<br>}</font></p> <p><font size=2>A:<br>p = malloc(1024);     搴旇鍐欐垚錛?p = (char *) malloc(1024); <br>        娌℃湁閲婃斁p鐨勭┖闂達(dá)紝閫犳垚鍐呭瓨娉勬紡銆?/font></p> <p><br><font size=2>--------------------------------------------------------------------------<br>8.涓嬮潰鐨勪唬鐮佹湁浠涔堥棶棰橈紵騫惰緇欏嚭姝g‘鐨勫啓娉曘?br>void DoSomeThing(char* p)<br>{<br> char str[16];<br> int n;<br> assert(NULL != p);<br> sscanf(p, "%s%d", str, n);<br> if (0 == strcmp(str, "something"))<br> {<br>  ...<br> }<br>}</font></p> <p><font size=2>A:<br>sscanf(p, "%s%d", str, n);   榪欏彞璇ュ啓鎴愶細(xì) sscanf(p, "%s%d", str, &n);</font></p> <p><font size=2>--------------------------------------------------------------------------<br>9.涓嬮潰浠g爜鏈変粈涔堥敊璇?<br>Void test1() <br>{ <br> char string[10]; <br> char *str1="0123456789";<br> strcpy(string, str1); <br>} </font></p> <p><font size=2>鏁扮粍瓚婄晫</font></p> <p><font size=2>--------------------------------------------------------------------------<br>10.涓嬮潰浠g爜鏈変粈涔堥棶棰?<br>Void test2() <br>{ <br>  char string[10], str1[10]; <br>  for(i=0; i<10;i++) <br>  { <br>     str1[i] ='a'; <br>  } <br>  strcpy(string, str1); <br>} </font></p> <p><font size=2>鏁扮粍瓚婄晫</font></p> <p><font size=2>--------------------------------------------------------------------------<br>11.涓嬮潰浠g爜鏈変粈涔堥棶棰?<br>Void test3(char* str1) <br>{ <br>  char string[10]; <br>  if(strlen(str1)<=10) <br>  { <br>    strcpy(string, str1); <br>  } <br>} </font></p> <p><font size=2>==鏁扮粍瓚婄晫<br>==strcpy鎷瘋礉鐨勭粨鏉熸爣蹇楁槸鏌ユ壘瀛楃涓蹭腑鐨刓0 鍥犳濡傛灉瀛楃涓蹭腑娌℃湁閬囧埌\0鐨勮瘽 浼?xì)涓鐩村鍒訛紝鐩村埌閬囧埌\0,涓婇潰鐨?23閮藉洜姝や駭鐢熻秺鐣岀殑鎯呭喌<br> <br>寤鴻浣跨敤 strncpy 鍜?memcpy</font></p> <p><font size=2>--------------------------------------------------------------------------<br>12.涓嬮潰浠g爜鏈変粈涔堥棶棰?</font></p> <p><font size=2>#define MAX_SRM 256 </font></p> <p><font size=2>DSN get_SRM_no() <br>{ <br>  static int SRM_no; //鏄笉鏄繖閲屾病璧嬪垵鍊鹼紵<br>  int I; <br>  for(I=0;I<MAX_SRM;I++,SRM_no++) <br>  { <br>    SRM_no %= MAX_SRM; <br>    if(MY_SRM.state==IDLE) <br>    { <br>      break; <br>    } <br>  } <br>  if(I>=MAX_SRM) <br>    return (NULL_SRM); <br>  else <br>    return SRM_no; <br>} </font></p> <p><font size=2>緋葷粺浼?xì)鍒濆鍖杝tatic int鍙橀噺涓?,浣嗚鍊間細(xì)涓鐩翠繚瀛?鎵璋撶殑涓嶅彲閲嶅叆...</font></p> <p><font size=2>--------------------------------------------------------------------------<br>13.鍐欏嚭榪愯緇撴灉:<br>{// test1<br>    char str[] = "world"; cout << sizeof(str) << ": ";<br>    char *p    = str;     cout << sizeof(p) << ": ";<br>    char i     = 10;      cout << sizeof(i) << ": ";<br>    void *pp   = malloc(10);  cout << sizeof(p) << endl;<br>}</font></p> <p><font size=2>6錛?錛?錛?</font></p> <p><font size=2>--------------------------------------------------------------------------<br>14.鍐欏嚭榪愯緇撴灉:<br>{// test2<br>    union V {<br> struct X {<br>  unsigned char s1:2;<br>  unsigned char s2:3;<br>  unsigned char s3:3;<br> } x;</font></p> <p><font size=2> unsigned char c;<br>    } v;</font></p> <p><font size=2>    v.c = 100;<br>    printf("%d", v.x.s3); </font></p> <p><font size=2>}</font></p> <p><font size=2>3</font></p> <p><font size=2>--------------------------------------------------------------------------<br>15.鐢–++鍐欎釜紼嬪簭錛屽浣曞垽鏂竴涓搷浣滅郴緇熸槸16浣嶈繕鏄?2浣嶇殑錛熶笉鑳界敤sizeof()鍑芥暟</font></p> <p><font size=2>A1:<br>16浣嶇殑緋葷粺涓嬶紝<br>int i = 65536;<br>cout << i; // 杈撳嚭0錛?br>int i = 65535;<br>cout << i; // 杈撳嚭-1錛?/font></p> <p><font size=2>32浣嶇殑緋葷粺涓嬶紝<br>int i = 65536;<br>cout << i; // 杈撳嚭65536錛?br>int i = 65535;<br>cout << i; // 杈撳嚭65535錛?/font></p> <p><font size=2>A2:</font></p> <p><font size=2>int a = ~0;<br>if( a>65536 ) <br>{<br>    cout<<"32 bit"<<endl;<br>}<br>else<br>{<br>    cout<<"16 bit"<<endl;<br>}</font></p> <p><br><font size=2>--------------------------------------------------------------------------<br>16.C鍜孋++鏈変粈涔堜笉鍚?</font></p> <p><font size=2>浠庢満鍒朵笂錛歝鏄潰鍚戣繃紼嬬殑錛堜絾c涔熷彲浠ョ紪鍐欓潰鍚戝璞$殑紼嬪簭錛夛紱c++鏄潰鍚戝璞$殑錛屾彁渚涗簡綾匯備絾鏄紝<br>c++緙栧啓闈㈠悜瀵硅薄鐨勭▼搴忔瘮c瀹規(guī)槗</font></p> <p><font size=2>浠庨傜敤鐨勬柟鍚戯細(xì)c閫傚悎瑕佹眰浠g爜浣撶Н灝忕殑錛屾晥鐜囬珮鐨勫満鍚堬紝濡傚祵鍏ュ紡錛沜++閫傚悎鏇翠笂灞傜殑錛屽鏉傜殑錛?nbsp; llinux鏍稿績澶ч儴鍒嗘槸c鍐欑殑錛屽洜涓哄畠鏄郴緇熻蔣浠訛紝鏁堢巼瑕佹眰鏋侀珮銆?/font></p> <p><font size=2>浠庡悕縐頒笂涔熷彲浠ョ湅鍑猴紝c++姣攃澶氫簡+錛岃鏄巆++鏄痗鐨勮秴闆嗭紱閭d負(fù)浠涔堜笉鍙玞+鑰屽彨c++鍛紝鏄洜涓篶++姣?br>c鏉ヨ鎵╁厖鐨勪笢瑗垮お澶氫簡錛屾墍浠ュ氨鍦╟鍚庨潰鏀句笂涓や釜+錛涗簬鏄氨鎴愪簡c++</font></p> <p><font size=2>C璇█鏄粨鏋勫寲緙栫▼璇█錛孋++鏄潰鍚戝璞$紪紼嬭璦銆?br>C++渚ч噸浜庡璞¤屼笉鏄繃紼嬶紝渚ч噸浜庣被鐨勮璁¤屼笉鏄昏緫鐨勮璁°?/font></p> <p><font size=2>--------------------------------------------------------------------------<br>17.鍦ㄤ笉鐢ㄧ涓夋柟鍙傛暟鐨勬儏鍐典笅錛屼氦鎹袱涓弬鏁扮殑鍊?br>#include <stdio.h></font></p> <p><font size=2>void main()<br>{<br>        int i=60;<br>        int j=50;<br>        i=i+j;<br>        j=i-j;<br>        i=i-j;<br>        printf("i=%d\n",i);<br>        printf("j=%d\n",j);<br>}</font></p> <p><font size=2>鏂規(guī)硶浜岋細(xì)<br>i^=j;<br>j^=i;<br>i^=j;</font></p> <p><font size=2>鏂規(guī)硶涓夛細(xì)<br>// 鐢ㄥ姞鍑忓疄鐜幫紝鑰屼笖涓嶄細(xì)婧㈠嚭<br>a = a+b-(b=a)</font></p> <p><font size=2>--------------------------------------------------------------------------<br>18.鏈夊叧浣嶅煙鐨勯潰璇曢錛堜負(fù)浠涔堣緭鍑虹殑鏄竴涓鎬殑瀛楃錛?/font></p> <p><font size=2>a.t = 'b';鏁堟灉鐩稿綋浜?a.t= 'b' & 0xf;</font></p> <p><font size=2>'b' --> 01100010<br>'b' & 0xf -->>00000010<br>鎵浠ヨ緭鍑篈scii鐮佷負(fù)2鐨勭壒孌婂瓧絎?/font></p> <p><br><font size=2>char t:4;灝辨槸4bit鐨勫瓧絎﹀彉閲忥紝鍚屾牱<br>unsigned short i:8;灝辨槸8bit鐨勬棤絎﹀彿鐭暣褰㈠彉閲?/font></p> <p><font size=2>--------------------------------------------------------------------------<br>19.int i=10, j=10, k=3; k*=i+j; k鏈鍚庣殑鍊兼槸?</font></p> <p><font size=2>60</font></p> <p><font size=2>--------------------------------------------------------------------------<br>20.榪涚▼闂撮氫俊鐨勬柟寮忔湁?</font></p> <p><font size=2>榪涚▼闂撮氫俊鐨勬柟寮忔湁 鍏變韓鍐呭瓨錛?綆¢亾 錛孲ocket 錛屾秷鎭槦鍒?, DDE絳?/font></p> <p><font size=2>--------------------------------------------------------------------------<br>21.<br>struct A <br>{ <br>char t:4; <br>char k:4; <br>unsigned short i:8; <br>unsigned long m; <br>} <br>sizeof(A)=?錛堜笉鑰冭檻杈圭晫瀵歸綈錛?/font></p> <p><font size=2>7</font></p> <p><font size=2>struct CELL             // Declare CELL bit field<br>{<br>   unsigned character  : 8;  // 00000000 ????????<br>   unsigned foreground : 3;  // 00000??? 00000000<br>   unsigned intensity  : 1;  // 0000?000 00000000<br>   unsigned background : 3;  // 0???0000 00000000<br>   unsigned blink      : 1;  // ?0000000 00000000<br>} screen[25][80];       // Array of bit fields<br>浜屻佷綅緇撴瀯 <br>    浣嶇粨鏋勬槸涓縐嶇壒孌婄殑緇撴瀯, 鍦ㄩ渶鎸変綅璁塊棶涓涓瓧鑺傛垨瀛楃殑澶氫釜浣嶆椂, 浣嶇粨鏋?<br>姣旀寜浣嶈繍綆楃鏇村姞鏂逛究銆?<br>    浣嶇粨鏋勫畾涔夌殑涓鑸艦寮忎負(fù): <br>     struct浣嶇粨鏋勫悕{ <br>          鏁版嵁綾誨瀷 鍙橀噺鍚? 鏁村瀷甯告暟; <br>          鏁版嵁綾誨瀷 鍙橀噺鍚? 鏁村瀷甯告暟; <br>     } 浣嶇粨鏋勫彉閲? <br>    鍏朵腑: 鏁版嵁綾誨瀷蹇呴』鏄痠nt(unsigned鎴杝igned)銆?鏁村瀷甯告暟蹇呴』鏄潪璐熺殑鏁?<br>鏁? 鑼冨洿鏄?~15, 琛ㄧず浜岃繘鍒朵綅鐨勪釜鏁? 鍗寵〃紺烘湁澶氬皯浣嶃?<br>    鍙橀噺鍚嶆槸閫夋嫨欏? 鍙互涓嶅懡鍚? 榪欐牱瑙勫畾鏄負(fù)浜嗘帓鍒楅渶瑕併?<br>    渚嬪: 涓嬮潰瀹氫箟浜嗕竴涓綅緇撴瀯銆?<br>     struct{ <br>          unsigned incon: 8;  /*incon鍗犵敤浣庡瓧鑺傜殑0~7鍏?浣?/ <br>          unsigned txcolor: 4;/*txcolor鍗犵敤楂樺瓧鑺傜殑0~3浣嶅叡4浣?/ <br>          unsigned bgcolor: 3;/*bgcolor鍗犵敤楂樺瓧鑺傜殑4~6浣嶅叡3浣?/ <br>          unsigned blink: 1;  /*blink鍗犵敤楂樺瓧鑺傜殑絎?浣?/ <br>     }ch; <br>    浣嶇粨鏋勬垚鍛樼殑璁塊棶涓庣粨鏋勬垚鍛樼殑璁塊棶鐩稿悓銆?<br>    渚嬪: 璁塊棶涓婁緥浣嶇粨鏋勪腑鐨刡gcolor鎴愬憳鍙啓鎴? <br>      ch.bgcolor <br>  <br>    娉ㄦ剰: <br>    1. 浣嶇粨鏋勪腑鐨勬垚鍛樺彲浠ュ畾涔変負(fù)unsigned, 涔熷彲瀹氫箟涓簊igned,  浣嗗綋鎴愬憳闀?<br>搴︿負(fù)1鏃? 浼?xì)琚湄?fù)鏄痷nsigned綾誨瀷銆傚洜涓哄崟涓綅涓嶅彲鑳藉叿鏈夌鍙楓?<br>    2. 浣嶇粨鏋勪腑鐨勬垚鍛樹笉鑳戒嬌鐢ㄦ暟緇勫拰鎸囬拡, 浣嗕綅緇撴瀯鍙橀噺鍙互鏄暟緇勫拰鎸囬拡, <br>濡傛灉鏄寚閽? 鍏舵垚鍛樿闂柟寮忓悓緇撴瀯鎸囬拡銆?<br>    3. 浣嶇粨鏋勬婚暱搴?浣嶆暟), 鏄悇涓綅鎴愬憳瀹氫箟鐨勪綅鏁頒箣鍜?  鍙互瓚呰繃涓や釜瀛?<br>鑺傘?<br>    4. 浣嶇粨鏋勬垚鍛樺彲浠ヤ笌鍏跺畠緇撴瀯鎴愬憳涓璧蜂嬌鐢ㄣ?<br>    渚嬪: <br>     struct info{ <br>          char name[8]; <br>          int age; <br>          struct addr address; <br>          float pay; <br>          unsigned state: 1; <br>          unsigned pay: 1; <br>          }workers;<br>    涓婁緥鐨勭粨鏋勫畾涔変簡鍏充簬涓涓伐浜虹殑淇℃伅銆傚叾涓湁涓や釜浣嶇粨鏋勬垚鍛? 姣忎釜浣嶇粨 <br>鏋勬垚鍛樺彧鏈変竴浣? 鍥犳鍙崰涓涓瓧鑺備絾淇濆瓨浜嗕袱涓俊鎭? 璇ュ瓧鑺備腑絎竴浣嶈〃紺哄伐 <br>浜虹殑鐘舵? 絎簩浣嶈〃紺哄伐璧勬槸鍚﹀凡鍙戞斁銆傜敱姝ゅ彲瑙佷嬌鐢ㄤ綅緇撴瀯鍙互鑺傜渷瀛樿串絀洪棿銆?/font></p> <p><br><font size=2>--------------------------------------------------------------------------<br>22.涓嬮潰鐨勫嚱鏁板疄鐜板湪涓涓浐瀹氱殑鏁頒笂鍔犱笂涓涓暟錛屾湁浠涔堥敊璇紝鏀規(guī) <br>int add_n(int n) <br>{ <br>  static int i=100; <br>  i+=n; <br>  return i; <br>} </font></p> <p><font size=2>絳?<br>鍥犱負(fù)static浣垮緱i鐨勫間細(xì)淇濈暀涓婃鐨勫箋?br>鍘繪帀static灝卞彲浜?/font></p> <p><font size=2>--------------------------------------------------------------------------<br>23.涓嬮潰鐨勪唬鐮佹湁浠涔堥棶棰?<br>class A <br>{ <br>public: <br>  A() { p=this; } <br>  ~A() { if(p!=NULL) { delete p; p=NULL; } } </font></p> <p><font size=2>  A* p; <br>};</font></p> <p><font size=2>絳?<br>浼?xì)寮曡典h棤闄愰掑綊</font></p> <p><font size=2>--------------------------------------------------------------------------<br>24.<br>union a {<br> int a_int1;<br> double a_double;<br> int a_int2;<br>};</font></p> <p><font size=2>typedef struct<br>{<br> a a1;<br> char y;<br>} b;</font></p> <p><font size=2>class c<br>{<br> double c_double;<br> b b1;<br> a a2;</font></p> <p><font size=2>};</font></p> <p><font size=2>杈撳嚭cout<<sizeof(c)<<endl;鐨勭粨鏋?</font></p> <p><font size=2>絳?<br>VC6鐜涓嬪緱鍑虹殑緇撴灉鏄?2</font></p> <p><font size=2>鍙?<br>鎴?sun)鍦╒C6.0+win2k涓嬪仛榪囪瘯楠?<br>short - 2<br>int-4<br>float-4<br>double-8<br>鎸囬拡-4</font></p> <p><font size=2>sizeof(union)錛屼互緇撴瀯閲岄潰size鏈澶х殑涓簎nion鐨剆ize</font></p> <p><font size=2> ----------------------------------------------------------------------------------</font></p> <p><font size=2>25.i鏈鍚庣瓑浜庡灝?<br>int i = 1;<br>int j = i++;<br>if((i>j++) && (i++ == j)) i+=j;</font></p> <p>絳?<br>i = 5</p> <p>--------------------------------------------------------------------------<br>26.<br>unsigned short array[]={1,2,3,4,5,6,7};<br>int i = 3;<br>*(array + i) = ?</p> <p>絳?<br>4</p> <p>--------------------------------------------------------------------------<br>27.<br>class A<br>{<br>  virtual void func1()錛?br>  void func2();<br>}<br>Class B: class A<br>{<br>  void func1(){cout << "fun1 in class B" << endl;}<br>  virtual void func2(){cout << "fun2 in class B" << endl;}<br>} <br>A, A涓殑func1鍜孊涓殑func2閮芥槸铏氬嚱鏁?<br>B, A涓殑func1鍜孊涓殑func2閮戒笉鏄櫄鍑芥暟.<br>C, A涓殑func2鏄櫄鍑芥暟.錛孊涓殑func1涓嶆槸铏氬嚱鏁?<br>D, A涓殑func2涓嶆槸铏氬嚱鏁幫紝B涓殑func1鏄櫄鍑芥暟.</p> <p>絳?<br>A</p> <p>--------------------------------------------------------------------------<br>28.<br>鏁版嵁搴擄細(xì)鎶藉嚭閮ㄩ棬錛屽鉤鍧囧伐璧勶紝瑕佹眰鎸夐儴闂ㄧ殑瀛楃涓查『搴忔帓搴忥紝涓嶈兘鍚湁"human resource"閮ㄩ棬錛?</p> <p>employee緇撴瀯濡備笅錛歟mployee_id, employee_name, depart_id,depart_name,wage</p> <p>絳?<br>select depart_name, avg(wage)<br>from employee<br>where depart_name <> 'human resource'<br>group by depart_name<br>order by depart_name</p> <p>--------------------------------------------------------------------------<br>29.<br>緇欏畾濡備笅SQL鏁版嵁搴擄細(xì)Test(num INT(4)) 璇風(fēng)敤涓鏉QL璇彞榪斿洖num鐨勬渶灝忓鹼紝浣嗕笉璁鎬嬌鐢ㄧ粺璁″姛鑳斤紝濡侻IN錛孧AX絳?/p> <p>絳?<br>select top 1 num<br>from Test<br>order by num desc</p> <p>--------------------------------------------------------------------------<br>30.<br>杈撳嚭涓嬮潰紼嬪簭緇撴灉銆?</p> <p>#include <iostream.h> </p> <p>class A <br>{ <br>public:<br> virtual void print(void) <br> { <br>    cout<<"A::print()"<<endl; <br> } <br>};<br>class B:public A <br>{ <br>public:<br> virtual void print(void) <br> { <br>   cout<<"B::print()"<<endl;<br> }; <br>}; <br>class C:public B<br>{<br>public:<br> virtual void print(void)<br> {<br>  cout<<"C::print()"<<endl;<br> }<br>};<br>void print(A a) <br>{ <br>   a.print(); <br>} <br>void main(void) <br>{ <br>   A a, *pa,*pb,*pc; <br>   B b; <br>   C c; <br>   <br>   pa=&a; <br>   pb=&b; <br>   pc=&c; <br>   <br>   a.print(); <br>   b.print(); <br>   c.print(); <br>   <br>   pa->print(); <br>   pb->print(); <br>   pc->print(); <br>   <br>   print(a); <br>   print(b); <br>   print(c); <br>}</p> <p>A:<br>A::print()<br>B::print()<br>C::print()<br>A::print()<br>B::print()<br>C::print()<br>A::print()<br>A::print()<br>A::print()</p> <p>--------------------------------------------------------------------------<br>31.<br>璇曠紪鍐欏嚱鏁板垽鏂綆楁満鐨勫瓧鑺傚瓨鍌ㄩ『搴忔槸寮搴?little endian)榪樻槸闄嶅簭(bigendian)</p> <p>絳?<br>bool IsBigendian()<br>{<br> unsigned short usData = 0x1122;<br> unsigned char  *pucData = (unsigned char*)&usData;</p> <p> return (*pucData == 0x22);<br>}</p> <p>--------------------------------------------------------------------------<br>32.綆榪癈ritical Section鍜孧utex鐨勪笉鍚岀偣</p> <p>絳?<br>瀵瑰嚑縐嶅悓姝ュ璞$殑鎬葷粨<br>1.Critical Section<br>A.閫熷害蹇?br>B.涓嶈兘鐢ㄤ簬涓嶅悓榪涚▼<br>C.涓嶈兘榪涜璧勬簮緇熻(姣忔鍙彲浠ユ湁涓涓嚎紼嬪鍏變韓璧勬簮榪涜瀛樺彇)</p> <p>2.Mutex<br>A.閫熷害鎱?br>B.鍙敤浜庝笉鍚岃繘紼?br>C.涓嶈兘榪涜璧勬簮緇熻</p> <p>3.Semaphore<br>A.閫熷害鎱?br>B.鍙敤浜庝笉鍚岃繘紼?br>C.鍙繘琛岃祫婧愮粺璁?鍙互璁╀竴涓垨瓚呰繃涓涓嚎紼嬪鍏變韓璧勬簮榪涜瀛樺彇)</p> <p>4.Event<br>A.閫熷害鎱?br>B.鍙敤浜庝笉鍚岃繘紼?br>C.鍙繘琛岃祫婧愮粺璁?/p> <p> </p> <p>--------------------------------------------------------------------------<br>33.涓涓暟鎹簱涓湁涓や釜琛?<br>涓寮犺〃涓篊ustomer錛屽惈瀛楁ID,Name;<br>涓寮犺〃涓篛rder錛屽惈瀛楁ID,CustomerID錛堣繛鍚慍ustomer涓璉D鐨勫閿級,Revenue錛?br>鍐欏嚭姹傛瘡涓狢ustomer鐨凴evenue鎬誨拰鐨凷QL璇彞銆?/p> <p>寤鴻〃<br>create table customer<br>(<br>ID int primary key,Name char(10)<br>)</p> <p>go</p> <p>create table [order]<br>(<br>ID int primary key,CustomerID  int foreign key references customer(id) , Revenue float<br>)</p> <p>go</p> <p>--鏌ヨ<br>select Customer.ID, sum( isnull([Order].Revenue,0) )<br>from customer full join [order] <br>on( [order].customerid=customer.id )<br>group by customer.id</p> <p>--------------------------------------------------------------------------<br>34.璇鋒寚鍑轟笅鍒楃▼搴忎腑鐨勯敊璇茍涓斾慨鏀?br>void GetMemory(char *p){<br>  p=(char *)malloc(100);<br>}<br>void Test(void){<br>  char *str=NULL;<br>  GetMemory=(str);<br>  strcpy(str,"hello world");<br>  printf(str);<br>}</p> <p>A:閿欒--鍙傛暟鐨勫兼敼鍙樺悗錛屼笉浼?xì)浼犲?br>GetMemory騫朵笉鑳戒紶閫掑姩鎬佸唴瀛橈紝Test鍑芥暟涓殑 str涓鐩撮兘鏄?NULL銆?br>strcpy(str, "hello world");灝嗕嬌紼嬪簭宕╂簝銆?/p> <p>淇敼濡備笅:<br>char *GetMemory(){<br>  char *p=(char *)malloc(100);<br>  return p;<br>}<br>void Test(void){<br>  char *str=NULL;<br>  str=GetMemory(){<br>  strcpy(str,"hello world");<br>  printf(str);<br>}</p> <p>鏂規(guī)硶浜?void GetMemory2(char **p)鍙樹負(fù)浜岀駭鎸囬拡.<br>void GetMemory2(char **p, int num)<br>{<br> *p = (char *)malloc(sizeof(char) * num);<br>}</p> <p>--------------------------------------------------------------------------<br>35.紼嬪簭鏀歸敊<br>class mml<br>{<br>  private:<br>    static unsigned int x;<br>  public:<br>    mml(){ x++; }<br>    mml(static unsigned int &) {x++;}<br>    ~mml{x--;}<br>  pulic:<br>    virtual mon() {} = 0;<br>    static unsigned int mmc(){return x;}<br>    ......                      <br> <br>};<br>class nnl:public mml<br>{<br>  private:<br>    static unsigned int y;<br>  public:<br>    nnl(){ x++; }<br>    nnl(static unsigned int &) {x++;}<br>    ~nnl{x--;}<br>  public:<br>    virtual mon() {};<br>     static unsigned int nnc(){return y;}<br>    ......                   <br>};</p> <p>浠g爜鐗囨柇:<br>mml* pp = new nnl;<br>..........<br>delete pp;</p> <p><br>A:<br>鍩虹被鐨勬瀽鏋勫嚱鏁板簲璇ヤ負(fù)铏氬嚱鏁?br>virtual ~mml{x--;}</p> <p>--------------------------------------------------------------------------<br>36.101涓‖甯?00鐪熴?鍋囷紝鐪熷亣鍖哄埆鍦ㄤ簬閲嶉噺銆傝鐢ㄦ棤鐮濈爜澶╁鉤縐頒袱嬈$粰鍑虹湡甯侀噸榪樻槸鍋囧竵閲嶇殑緇撹銆?/p> <p>絳?<br>101涓厛鍙栧嚭2鍫?<br>33,33<br>絎竴嬈$О,濡傛灉涓嶇浉絳?璇存槑鏈変竴鍫嗛噸鎴栬交<br>閭d箞鎶婇噸鐨勯偅鍫嗘嬁涓嬫潵,鍐嶆斁鍙﹀35涓腑鐨?3<br>濡傛灉鐩哥瓑,璇存槑鍋囩殑閲?濡傛灉涓嶇浉絳?鏂版斁涓婂幓鐨勮繕鏄噸鐨勮瘽,璇存槑鍋囩殑杞?涓嶅彲鑳芥柊鏀句笂鍘葷殑杞?</p> <p>絎竴嬈$О,濡傛灉鐩哥瓑鐨勮瘽錛岃繖66涓偗瀹氶兘鏄湡鐨?浠庤繖66涓腑鍙栧嚭35涓潵,涓庡墿涓嬬殑娌$О榪囩殑35涓瘮<br>涓嬮潰灝變笉鐢ㄨ浜?/p> <p>鏂規(guī)硶浜?<br>絎?棰樹篃鍙互鎷緼(50),B(50)姣斾竴涓嬶紝涓鏍風(fēng)殑璇濇嬁鍓╀笅鐨勪竴涓拰鐪熺殑姣斾竴涓嬨?br>濡傛灉涓嶄竴鏍鳳紝灝辨嬁鍏朵腑鐨勪竴鍫嗐傛瘮濡侫(50)鍐嶅垎鎴愪袱鍫?5姣斾竴涓嬶紝涓鏍風(fēng)殑璇濆氨鍦?br>B(50)涓紝涓嶄竴鏍峰氨鍦ˋ(50)涓紝緇撳悎絎竴嬈$殑緇撴灉灝辯煡閬撲簡銆?/p> <p>--------------------------------------------------------------------------<br>37.static鍙橀噺鍜宻tatic 鍑芥暟鍚勬湁浠涔堢壒鐐癸紵</p> <p>絳?<br>static鍙橀噺錛氬湪紼嬪簭榪愯鏈熷唴涓鐩存湁鏁堬紝濡傛灉瀹氫箟鍦ㄥ嚱鏁板錛屽垯鍦ㄧ紪璇戝崟鍏冨唴鍙錛屽鏋滃湪鍑芥暟鍐咃紝鍦ㄥ湪瀹氫箟鐨刡lock鍐呭彲瑙侊紱<br>static鍑芥暟錛氬湪緙栬瘧鍗曞厓鍐呭彲瑙侊紱</p> <p>--------------------------------------------------------------------------<br>38.鐢– 鍐欎竴涓緭鍏ョ殑鏁存暟,鍊掔潃杈撳嚭鏁存暟鐨勫嚱鏁?瑕佹眰鐢ㄩ掑綊鏂規(guī)硶 ;</p> <p>絳?<br>void fun( int a )<br>{<br> printf( "%d", a%10 );<br> a /= 10;<br> if( a <=0 )return;</p> <p> fun( a );<br>}</p> <p>--------------------------------------------------------------------------<br>39.鍐欏嚭紼嬪簭緇撴灉:<br>void Func(char str[100])<br>{<br>  printf("%d\n", sizeof(str));<br>}</p> <p>絳?<br>4<br>鍒嗘瀽:<br>鎸囬拡闀垮害</p> <p>--------------------------------------------------------------------------<br>40.int id[sizeof(unsigned long)];<br>    榪欎釜瀵瑰悧錛熶負(fù)浠涔??</p> <p>絳?瀵?br>榪欎釜 sizeof鏄紪璇戞椂榪愮畻絎︼紝緙栬瘧鏃跺氨紜畾浜?br>鍙互鐪嬫垚鍜屾満鍣ㄦ湁鍏崇殑甯擱噺銆?/p> </div> <br> <img src ="http://www.shnenglu.com/Csystemthink/aggbug/46529.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Csystemthink/" target="_blank">snail</a> 2008-04-08 17:27 <a href="http://www.shnenglu.com/Csystemthink/archive/2008/04/08/46529.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鍫嗗拰鏍堢殑鍖哄埆http://www.shnenglu.com/Csystemthink/archive/2008/04/08/46512.htmlsnailsnailTue, 08 Apr 2008 07:15:00 GMThttp://www.shnenglu.com/Csystemthink/archive/2008/04/08/46512.htmlhttp://www.shnenglu.com/Csystemthink/comments/46512.htmlhttp://www.shnenglu.com/Csystemthink/archive/2008/04/08/46512.html#Feedback0http://www.shnenglu.com/Csystemthink/comments/commentRss/46512.htmlhttp://www.shnenglu.com/Csystemthink/services/trackbacks/46512.html闃呰鍏ㄦ枃

snail 2008-04-08 15:15 鍙戣〃璇勮
]]>
(杞?Polymorphism(澶氭佹?寰堥粍寰堝己澶э紝澶у娉ㄦ剰灝戝効涓嶅疁http://www.shnenglu.com/Csystemthink/archive/2008/03/17/44680.htmlsnailsnailMon, 17 Mar 2008 03:21:00 GMThttp://www.shnenglu.com/Csystemthink/archive/2008/03/17/44680.htmlhttp://www.shnenglu.com/Csystemthink/comments/44680.htmlhttp://www.shnenglu.com/Csystemthink/archive/2008/03/17/44680.html#Feedback1http://www.shnenglu.com/Csystemthink/comments/commentRss/44680.htmlhttp://www.shnenglu.com/Csystemthink/services/trackbacks/44680.htmlPolymorphism shouldn't be a new concept to anybody. You deal with it every day in the real world. There's more than one class of cat to skin, but you skin 'em the same way, even if the specific instance is completely new to you. Let's say for example you want to fuck a hole. You fuck all holes the same. You don't care if that hole happens to be a mouth, an ass, or a pussy, you're gonna fuck it the same way regardless. However, the mouth, pussy, or ass may respond differently to the fucking.

So you have a common abstract class named 'Hole' and 3 concrete classes Pussy, Ass, and Mouth which all extend from Hole:


class Pussy extends Hole {}
class Mouth extends Hole {}
class Ass extends Hole {}

So, now let's say you have a Penis.Fuck(Hole h) method. The Penis class is unconcerned about what the specific Hole instance is, it's gonna fuck it the same regardless. Specificly we thrust the Hole with a Penis until the Penis is spent. Finally, we give the hole the Penis' load.


class Penis {
  public Fuck(Hole h) {
    while(!this.isSpent) {
      h.TakeAThrust(this);
      this.arousal++;
    }
    h.TakeALoad(this.load);
  }
}

Now here's where polymorphism gets fun. The Hole will respond different to the thrusting and load depending on what specific type of Hole we're implementing.

First we must implement an abstract class which defines an abstract interface.


abstract class Hole {
  public abstract void TakeAThrust(Penis p);

  public abstract void TakeALoad(Load l);
}

Now all that's left is the varying implementations of these methods in the seperate concrete classes. For example, an Ass' implementation of TakeAThrust could look something like:


public void TakeAThrust(Penis p) {
  if(!enoughLube && p.Circumference > 6) {
    analFissureCount++;
  }
}

See, the beauty of it is... the Penis doesn't even need to know it's fucking an Ass for the Ass to behave like a proper Ass.

Now, let's see how we might implement TakeALoad differently for Mouth and Pussy:


//in Pussy
public void TakeALoad(Load l) {
  //randomly determine whether to cause a pregnancy with a 10% chance...
  if(Math.RandomNumber() % 10 == 0) {
    this.Woman.EggFactory.GetEgg().Inseminate(l);
  }
}

//in Mouth
public void TakeALoad(Load l) {
  //50-50 chance of spitting or swallowing
  if(Math.RandomNumber() % 1 == 0) {
    this.Spit(l);
  } else {
    this.Swallow(l);
  }
}

Putting it all together with client code

Now that we have our classes well planned out with polymorphism in mind, we can see the kind of luxury it is for the client programmer to work with.


//create an array of 4 women
Woman[] women = new Woman[]{new Woman(), new Woman(), new Woman(), new Woman()};

//create a hole array to reference the holes of all 4 women, plus two additional holes.
Hole[] holes = new Hole[4*3 + 2];

for(int i = 0; i < women.Length; i++) {
  holes[3 * i + 0] = women[i].Mouth;
  holes[3 * i + 1] = women[i].Pussy;
  holes[3 * i + 2] = women[i].Ass;
}

//additional holes (so the faggy programmers don't feel left out)
Man m = new Man();
holes[12] = m.Mouth;
holes[13] = m.Ass;

//now we loop through the holes and fuck them all with the same Penis

Penis p = new Man().Penis;

foreach(Hole h in holes) {
  p.Fuck(h);
}

See how easy it makes it for the client programmer?



snail 2008-03-17 11:21 鍙戣〃璇勮
]]>
国产激情久久久久影院老熟女免费 | 亚洲AⅤ优女AV综合久久久| 国产午夜精品理论片久久| 久久久精品国产Sm最大网站| 久久久久亚洲国产| 久久精品亚洲精品国产色婷| 91秦先生久久久久久久| 欧美粉嫩小泬久久久久久久| 日韩精品久久久久久久电影蜜臀| 国产午夜久久影院| 污污内射久久一区二区欧美日韩 | 久久精品aⅴ无码中文字字幕重口| 99精品久久久久中文字幕| 久久99亚洲综合精品首页| 婷婷五月深深久久精品| 久久精品无码一区二区三区免费| 久久久国产打桩机| 国产精品99久久不卡| 久久国产精品一国产精品金尊| 久久久久亚洲av毛片大| 久久成人国产精品二三区| 久久精品国产日本波多野结衣 | 国内精品久久久久久久97牛牛 | 亚洲国产成人精品无码久久久久久综合| 亚洲国产小视频精品久久久三级| 精品熟女少妇av免费久久| 波多野结衣久久精品| 天堂无码久久综合东京热| 精品久久久久久99人妻| 久久这里只有精品久久| 国产一级做a爰片久久毛片| 欧洲人妻丰满av无码久久不卡| 日韩电影久久久被窝网| 精品久久久久久无码免费| 18岁日韩内射颜射午夜久久成人| 久久久久人妻精品一区| 无码人妻少妇久久中文字幕蜜桃 | 久久婷婷色综合一区二区| 国产精品成人99久久久久91gav| 久久本道伊人久久| 国产精久久一区二区三区|