ÔÚc++µ÷ÓÃc³ÌÐòʱ£¬»Øµ÷º¯ÊýÊDz»ÄÜÖ±½ÓʹÓõģ¬ÒÔc++µ÷ÓÃcµÄGtkº¯ÊýΪÀý£¬ ±ÈÈ磬ÔÚg_idle_add (init, NULL);
Õâ¾ä»°ÖУ¬Ò»µ©idle¾Í»áµ÷Óú¯Êýinit(), Õâ¸öinit()»¹»á¶ÔÀàµÄ³ÉÔ±±äÁ¿½øÐд¦Àí¡£
Õâʱ£¬¼ÙÈç°Ñinit()¼òµ¥µØ¶¨ÒåΪÀàµÄÆÕͨ³ÉÔ±º¯Êý¾Í»á³öÏÖÀàÐͲ»Æ¥ÅäµÄ´íÎó£¬ÒòΪg_idle_add()ÒªÇóËüµÄµÚÒ»¸ö²ÎÊý
ÊǸöÆÕͨµÄº¯ÊýÖ¸Õ룬¶øÏÖÔÚÈ´»á±»±àÒëΪGtkScreen::init()º¯ÊýÖ¸Õ룬(¼Ù¶¨ÎÒҪдµÄÀà½Ð×öGtkScreen)¡£
½â¾ö°ì·¨¾ÍÊÇ:
1. ÔÚGtkScreenµÄÍ·ÎļþÖн«º¯Êýinit()ÉùÃ÷ΪstaticµÄ¡£
2. ÔÚÀàµÄʵÏÖÎļþ(GtkScreen.cpp)ÖÐËùÓеĺ¯ÊýÖ®ÍⶨÒåÒ»¸ö¾²Ì¬µÄÖ¸ÏòÀàµÄÖ¸Õë: static GtkScreen* pobject;
3. ÔÚ¹¹Ô캯ÊýÖжÔpobject¸³Öµ: pobjct = this; £¨Êµ¼ÊÉϲ»±ØÒ»¶¨ÔÚ¹¹Ô캯ÊýÖУ¬Ö»ÒªÊDZȵ÷ÓÃÓï¾äÔçÖ´Ðеĵط½¾ÍÐУ©
4. ÔÚÒªµ÷Óõĺ¯Êý(init)ÖÐ, ËùÓÐÀàµÄ³ÉÔ±±äÁ¿Ç°Ãæ¶¼¼ÓÉÏpobject->
¾ÍÐÐÀ²¡£
ͬʱҪעÒ⣬ÔÚc++ÖÐinclude cµÄ¿âÎļþ, include Óï¾äµÄÇ°ÃæÒª¼ÓÉÏ
#ifdef __cplusplus
extern "C ......
ÔÚc++µ÷ÓÃc³ÌÐòʱ£¬»Øµ÷º¯ÊýÊDz»ÄÜÖ±½ÓʹÓõģ¬ÒÔc++µ÷ÓÃcµÄGtkº¯ÊýΪÀý£¬ ±ÈÈ磬ÔÚg_idle_add (init, NULL);
Õâ¾ä»°ÖУ¬Ò»µ©idle¾Í»áµ÷Óú¯Êýinit(), Õâ¸öinit()»¹»á¶ÔÀàµÄ³ÉÔ±±äÁ¿½øÐд¦Àí¡£
Õâʱ£¬¼ÙÈç°Ñinit()¼òµ¥µØ¶¨ÒåΪÀàµÄÆÕͨ³ÉÔ±º¯Êý¾Í»á³öÏÖÀàÐͲ»Æ¥ÅäµÄ´íÎó£¬ÒòΪg_idle_add()ÒªÇóËüµÄµÚÒ»¸ö²ÎÊý
ÊǸöÆÕͨµÄº¯ÊýÖ¸Õ룬¶øÏÖÔÚÈ´»á±»±àÒëΪGtkScreen::init()º¯ÊýÖ¸Õ룬(¼Ù¶¨ÎÒҪдµÄÀà½Ð×öGtkScreen)¡£
½â¾ö°ì·¨¾ÍÊÇ:
1. ÔÚGtkScreenµÄÍ·ÎļþÖн«º¯Êýinit()ÉùÃ÷ΪstaticµÄ¡£
2. ÔÚÀàµÄʵÏÖÎļþ(GtkScreen.cpp)ÖÐËùÓеĺ¯ÊýÖ®ÍⶨÒåÒ»¸ö¾²Ì¬µÄÖ¸ÏòÀàµÄÖ¸Õë: static GtkScreen* pobject;
3. ÔÚ¹¹Ô캯ÊýÖжÔpobject¸³Öµ: pobjct = this; £¨Êµ¼ÊÉϲ»±ØÒ»¶¨ÔÚ¹¹Ô캯ÊýÖУ¬Ö»ÒªÊDZȵ÷ÓÃÓï¾äÔçÖ´Ðеĵط½¾ÍÐУ©
4. ÔÚÒªµ÷Óõĺ¯Êý(init)ÖÐ, ËùÓÐÀàµÄ³ÉÔ±±äÁ¿Ç°Ãæ¶¼¼ÓÉÏpobject->
¾ÍÐÐÀ²¡£
ͬʱҪעÒ⣬ÔÚc++ÖÐinclude cµÄ¿âÎļþ, include Óï¾äµÄÇ°ÃæÒª¼ÓÉÏ
#ifdef __cplusplus
extern "C ......
string info ="¿Í»§¶ËIP£º"+ Page.Request.UserHostAddress;
info += "<br/>Óû§ÐÅÏ¢£º" + Page.User;
info += "<br/>·þÎñÆ÷µçÄÔÃû³Æ£º" + Page.Server.MachineName;
info += "<br/>µ±Ç°Óû§µçÄÔÃû³Æ£º" + System.Net.Dns.GetHostName();
info += "<br/>µ±Ç°µçÄÔÃû£º" + System.Environment.MachineName;
info += "<br/>µ±Ç°µçÄÔËùÊôÍøÓò£º" + System.Environment.UserDomainName;
info += "<br/>µ±Ç°µçÄÔÓû§£º" + System.Environment.UserName;
info += "<br/>ä¯ÀÀÆ÷ÀàÐÍ£º"+Request.Browser.Browser;
info += "<br/>ä¯ÀÀÆ÷±êʶ£º" + Request.Browser.Id;
info += "<br/>ä¯ÀÀÆ÷°æ±¾ºÅ£º" + Request.Browser.Version;
info += "<br/>ä¯ÀÀÆ÷ÊDz»ÊDzâÊÔ°æ±¾£º"+Request.Browser.Beta;
info += "<br/>ä¯ÀÀÆ÷µÄ·Ö±æÂÊ(ÏñËØ)£º" + Request["width"].ToString() + "*" + Request["height"].ToString();//1280/1024
info += "<hr/>";
info += "<br/>¿Í»§¶ËµÄ²Ù×÷ϵͳ£º"+Request.Browser.Platform;
info += "<br/>ÊDz»ÊÇwin16ϵͳ£º"+Request.Browser.Win16;
info += "<br/ ......
±¾À´ÎÒÓõÄÊÇÕâÑùµÄ³ÌÐò
# include <iostream.h>
int main(void)
{
int i,j;
j=0;
i=j+1;
cout<<"hello world!"<<endl;
cout<<"the result is"<<i<<endl;
return 0;
}
ÀûÓÃg++ -o test test.cpp¡£µ«ÊÇÕâÑùÊÇÓдíÎóµÄ£¬ÌáʾÎÞ·¨´ò¿ªiostream.h£¬Ð޸ijÉÕâÑùµÄ³ÌÐò
# include <iostream>
using namespace std;
int main(void)
{
int i,j;
j=0;
i=j+1;
cout<<"hello world!"<<endl;
cout<<"the result is"<<i<<endl;
return 0;
}
g++ -o test test.cpp ÕâÑùÔËÐеĽá¹ûÊÇÕýÈ·µÄ¡£
<iostream>ºÍ<iostream.h>ÊDz»Ò»Ñù£¬Ç°ÕßûÓкó׺£¬Êµ¼ÊÉÏ£¬ÔÚÄãµÄ±àÒëÆ÷includeÎļþ¼ÐÀïÃæ¿ÉÒÔ¿´µ½£¬¶þÕßÊÇÁ½¸öÎļþ£¬´ò¿ªÎļþ¾Í»á·¢ÏÖ£¬ÀïÃæµÄ´úÂëÊDz»Ò»ÑùµÄ¡£
ºó׺Ϊ.hµÄÍ·Îļþc++±ê×¼ÒѾÃ÷È·Ìá³ö²»Ö§³ÖÁË£¬ÔçЩµÄʵÏÖ½«±ê×¼¿â¹¦Äܶ¨ÒåÔÚÈ«¾Ö¿Õ¼äÀÉùÃ÷ÔÚ´ø.hºó׺µÄÍ·ÎļþÀc++±ê׼ΪÁ˺ÍCÇø±ð¿ª£¬Ò²ÎªÁËÕýȷʹÓÃÃüÃû¿Õ¼ä£¬¹æ¶¨Í·Îļþ²»Ê¹Óúó׺.h¡£
Òò´Ë£¬µ±Ê¹ÓÃ<iostream. ......
±¾À´ÎÒÓõÄÊÇÕâÑùµÄ³ÌÐò
# include <iostream.h>
int main(void)
{
int i,j;
j=0;
i=j+1;
cout<<"hello world!"<<endl;
cout<<"the result is"<<i<<endl;
return 0;
}
ÀûÓÃg++ -o test test.cpp¡£µ«ÊÇÕâÑùÊÇÓдíÎóµÄ£¬ÌáʾÎÞ·¨´ò¿ªiostream.h£¬Ð޸ijÉÕâÑùµÄ³ÌÐò
# include <iostream>
using namespace std;
int main(void)
{
int i,j;
j=0;
i=j+1;
cout<<"hello world!"<<endl;
cout<<"the result is"<<i<<endl;
return 0;
}
g++ -o test test.cpp ÕâÑùÔËÐеĽá¹ûÊÇÕýÈ·µÄ¡£
<iostream>ºÍ<iostream.h>ÊDz»Ò»Ñù£¬Ç°ÕßûÓкó׺£¬Êµ¼ÊÉÏ£¬ÔÚÄãµÄ±àÒëÆ÷includeÎļþ¼ÐÀïÃæ¿ÉÒÔ¿´µ½£¬¶þÕßÊÇÁ½¸öÎļþ£¬´ò¿ªÎļþ¾Í»á·¢ÏÖ£¬ÀïÃæµÄ´úÂëÊDz»Ò»ÑùµÄ¡£
ºó׺Ϊ.hµÄÍ·Îļþc++±ê×¼ÒѾÃ÷È·Ìá³ö²»Ö§³ÖÁË£¬ÔçЩµÄʵÏÖ½«±ê×¼¿â¹¦Äܶ¨ÒåÔÚÈ«¾Ö¿Õ¼äÀÉùÃ÷ÔÚ´ø.hºó׺µÄÍ·ÎļþÀc++±ê׼ΪÁ˺ÍCÇø±ð¿ª£¬Ò²ÎªÁËÕýȷʹÓÃÃüÃû¿Õ¼ä£¬¹æ¶¨Í·Îļþ²»Ê¹Óúó׺.h¡£
Òò´Ë£¬µ±Ê¹ÓÃ<iostream. ......
Ш×Ó
¡¡¡¡ È¥Ä꣬ÖÜÐÇÐÇ´ó¸çÔø¾ÔÚVCKBASE/C++ÂÛ̳·¢±í¹ýһƪÎÄÕ“Êý×éÒýÓÃ"ÒÔ±ÜÃâ"Êý×é½µ½×”£¬µ±Ê±ÎÒ²»ÄÜÉîÈëÀí½âÕâÖÖÓ÷¨µÄº¬Ò壻ʱ¸ôÒ»Ä꣬ÎÒµÄ֪ʶÓм¸¾´¸Á¶£¬ÖÕÓÚ¶Ô´ËÎÄÕ½¥ÓÐËùÎò£¬ËùÒÔ°ÑÎáËùÖª×÷Ïë¾ßÌåµÀÀ´£¬¾¹Ò²³ÉÁËһƪÎÄÕ¡£Ï£Íû±¾ÎÄÄܶÔÐÂÊÖÓÐËùÆôµÏ£¬Í¬Ê±Ò²Ï£Íû´ó¼Ò·¢ÏÖ±¾ÎÄÖеÄÊè©֮´¦ºó²»ÁßÁôÑÔÖ¸½Ì¡£
¡¡¡¡ ¹ÊÊÂÆðÔ´ÓÚÖÜÐÇÐÇ´ó¸ç¸ø³öµÄÁ½¸öDemo£¬ÎªÁ˽ÚÊ¡µØ·½£¬ÎÒ°ÑÁ½¸öDemoºÏ¶þΪһ£¬Ò²ÄÜ˵Ã÷ͬÑùµÄÎÊÌ⣺
¡¡¡¡#include <iostream>
¡¡¡¡using namespace std;
¡¡¡¡void Foo1(int arr[100])
¡¡¡¡{
¡¡¡¡cout << "pass by pointer: " << sizeof(arr) << endl;
¡¡¡¡}
¡¡¡¡void Foo2(int (&arr)[100])
¡¡¡¡{
¡¡¡¡cout << "pass by reference: " << sizeof(arr) << endl;
¡¡¡¡}
¡¡¡¡void main()
¡¡¡¡{
¡¡¡¡int a[100];
¡¡¡¡cout << "In main function : " << sizeof(a) << endl;
¡¡¡¡Foo1(a);
¡¡¡¡Foo2(a);
¡¡¡¡}
¡¡¡¡ÆäÔËÐнá¹ûÈçÏ£º
¡¡¡¡In main function : 400
¡¡¡¡pass by pointer: 4
¡¡¡¡pass by reference: 400
¡¡¡¡ Õâ¶Î´úÂë˵Ã÷ÁË£¬¼ÙÈçÊý×éÐ ......
Ш×Ó
¡¡¡¡ È¥Ä꣬ÖÜÐÇÐÇ´ó¸çÔø¾ÔÚVCKBASE/C++ÂÛ̳·¢±í¹ýһƪÎÄÕ“Êý×éÒýÓÃ"ÒÔ±ÜÃâ"Êý×é½µ½×”£¬µ±Ê±ÎÒ²»ÄÜÉîÈëÀí½âÕâÖÖÓ÷¨µÄº¬Ò壻ʱ¸ôÒ»Ä꣬ÎÒµÄ֪ʶÓм¸¾´¸Á¶£¬ÖÕÓÚ¶Ô´ËÎÄÕ½¥ÓÐËùÎò£¬ËùÒÔ°ÑÎáËùÖª×÷Ïë¾ßÌåµÀÀ´£¬¾¹Ò²³ÉÁËһƪÎÄÕ¡£Ï£Íû±¾ÎÄÄܶÔÐÂÊÖÓÐËùÆôµÏ£¬Í¬Ê±Ò²Ï£Íû´ó¼Ò·¢ÏÖ±¾ÎÄÖеÄÊè©֮´¦ºó²»ÁßÁôÑÔÖ¸½Ì¡£
¡¡¡¡ ¹ÊÊÂÆðÔ´ÓÚÖÜÐÇÐÇ´ó¸ç¸ø³öµÄÁ½¸öDemo£¬ÎªÁ˽ÚÊ¡µØ·½£¬ÎÒ°ÑÁ½¸öDemoºÏ¶þΪһ£¬Ò²ÄÜ˵Ã÷ͬÑùµÄÎÊÌ⣺
¡¡¡¡#include <iostream>
¡¡¡¡using namespace std;
¡¡¡¡void Foo1(int arr[100])
¡¡¡¡{
¡¡¡¡cout << "pass by pointer: " << sizeof(arr) << endl;
¡¡¡¡}
¡¡¡¡void Foo2(int (&arr)[100])
¡¡¡¡{
¡¡¡¡cout << "pass by reference: " << sizeof(arr) << endl;
¡¡¡¡}
¡¡¡¡void main()
¡¡¡¡{
¡¡¡¡int a[100];
¡¡¡¡cout << "In main function : " << sizeof(a) << endl;
¡¡¡¡Foo1(a);
¡¡¡¡Foo2(a);
¡¡¡¡}
¡¡¡¡ÆäÔËÐнá¹ûÈçÏ£º
¡¡¡¡In main function : 400
¡¡¡¡pass by pointer: 4
¡¡¡¡pass by reference: 400
¡¡¡¡ Õâ¶Î´úÂë˵Ã÷ÁË£¬¼ÙÈçÊý×éÐ ......
ÓÃCÓïÑÔдµÄÒ»¸ö¼òµ¥µÄ×Ö½ÚÐͲéѯÆ÷£¬Ö÷Òª¹¦ÄÜÊÇʵÏÖ¶Ô signed int float unsigned int double signed short int long double unsigned short int char long int unsigned long int Õ⼸¸öÀàÐ͵Ä×Ö½ÚÕ¼ÓõIJéѯ ÓõÄÊÇVC6±àÒëÆ÷ ËùÒÔ²¢²»ÍêÈ«ÊÇ´¿CµÄ
/************************************************************************
* Copyright (c) 2009, Simple1Day
*
* ÎļþÃû³Æ£ºItem1.cpp
* ͻ񻣼
* Ìṩ²éѯint,short,long,float,doubleÊý¾ÝÀàÐÍÕ¼ÓÃÄÚ´æ×Ö½Ú´óС
*************************************************************************/
#include "std ......
×Ô´Ó½Ó´¥ÕâÃÅÓïÑÔµ½ÏÖÔÚÓÐÒ»¸ö¶àÐÇÆÚµÄʱ¼äÁË£¬ËäÈ»ÒÔºóµÄ·»¹ºÜ³¤£¬»áÓöµ½¸÷ÖÖÀ§ÄÑ£¬µ«Ö»ÒªÓÐÄÍÐĺÍÒãÁ¦£¬»¹Òª½Å̤ʵµØµÄ´òºÃ»ù´¡£¬¾ÍÒ»¶¨ÄÜÓг¤Í¾µÄ½ø²½£¬ºÇºÇ£¬Ï£ÍûÔÚÕâÀïµÄÿһ¸öÈ˶¼ºÍÎÒÒ»Æð¼ÓÓÍ£¬²»¶Ï½ø²½¡£
Ëæ»úº¯Êý¶ÔÿÖÖ±à³ÌÓïÑÔÀ´Ëµ¶¼ÊÇÒ»¸ö²»¿ÉȱÉٵĻ·½Ú£¬ÄÇôÔÚC++ÖÐËüÊÇÈçºÎÓ¦Óõģ¬ÕâÀïΪÁË·½±ãÀí½â£¬¶ÔÒÔǰ¿´¹ýµÄ¼¸ÆªÎÄÕÂ×öÒÔÏÂ×ܽá:
I ) ±¾µØC++¿ØÖÆÌ¨Ó¦ÓóÌÐò
C++±ê×¼º¯Êý¿âÌá¹©Ò»Ëæ»úÊýÉú³ÉÆ÷rand£¬rand()º¯Êý²»½ÓÊܲÎÊý£¬Ä¬ÈÏÒÔ1ΪÖÖ×Ó£¨¼´Æðʼֵ£©¡£ Ëæ»úÊýÉú³ÉÆ÷×ÜÊÇÒÔÏàͬµÄÖÖ×Ó¿ªÊ¼£¬ËùÒÔÐγɵÄÎ±Ëæ»úÊýÁÐÒ²Ïàͬ¡£Èç¹ûÐèÒª²úÉúµÄËæ»úÊý²»ÐèÒªÉ趨·¶Î§µÄ»°£¬ÓÃrand()¾ÍÐС£
²»ÒªÍü¼ÇÊÂÏȶ¨Òå°üº¬rand()µÄÍ·Îļþ #include<stdio.h>ºÍ#include<stdlib.h>¡£ÈçÀý1 #include<stdio.h>
#include<stdlib.h>
void main()
{
for(int i=0;i<10;i+)
printf("%d\n",rand());
}
¾ßÌåÓ¦ÓÃÈ磬Ҫ²úÉú0µ½10µÄËæ»úÊý rand()%(10 + 1); ¼´ rand()%11; Èô1µ½10 : 1 + rand()%11;ÒÔ´ËÀàÍÆ aµ½b : &nbs ......
×Ô´Ó½Ó´¥ÕâÃÅÓïÑÔµ½ÏÖÔÚÓÐÒ»¸ö¶àÐÇÆÚµÄʱ¼äÁË£¬ËäÈ»ÒÔºóµÄ·»¹ºÜ³¤£¬»áÓöµ½¸÷ÖÖÀ§ÄÑ£¬µ«Ö»ÒªÓÐÄÍÐĺÍÒãÁ¦£¬»¹Òª½Å̤ʵµØµÄ´òºÃ»ù´¡£¬¾ÍÒ»¶¨ÄÜÓг¤Í¾µÄ½ø²½£¬ºÇºÇ£¬Ï£ÍûÔÚÕâÀïµÄÿһ¸öÈ˶¼ºÍÎÒÒ»Æð¼ÓÓÍ£¬²»¶Ï½ø²½¡£
Ëæ»úº¯Êý¶ÔÿÖÖ±à³ÌÓïÑÔÀ´Ëµ¶¼ÊÇÒ»¸ö²»¿ÉȱÉٵĻ·½Ú£¬ÄÇôÔÚC++ÖÐËüÊÇÈçºÎÓ¦Óõģ¬ÕâÀïΪÁË·½±ãÀí½â£¬¶ÔÒÔǰ¿´¹ýµÄ¼¸ÆªÎÄÕÂ×öÒÔÏÂ×ܽá:
I ) ±¾µØC++¿ØÖÆÌ¨Ó¦ÓóÌÐò
C++±ê×¼º¯Êý¿âÌá¹©Ò»Ëæ»úÊýÉú³ÉÆ÷rand£¬rand()º¯Êý²»½ÓÊܲÎÊý£¬Ä¬ÈÏÒÔ1ΪÖÖ×Ó£¨¼´Æðʼֵ£©¡£ Ëæ»úÊýÉú³ÉÆ÷×ÜÊÇÒÔÏàͬµÄÖÖ×Ó¿ªÊ¼£¬ËùÒÔÐγɵÄÎ±Ëæ»úÊýÁÐÒ²Ïàͬ¡£Èç¹ûÐèÒª²úÉúµÄËæ»úÊý²»ÐèÒªÉ趨·¶Î§µÄ»°£¬ÓÃrand()¾ÍÐС£
²»ÒªÍü¼ÇÊÂÏȶ¨Òå°üº¬rand()µÄÍ·Îļþ #include<stdio.h>ºÍ#include<stdlib.h>¡£ÈçÀý1 #include<stdio.h>
#include<stdlib.h>
void main()
{
for(int i=0;i<10;i+)
printf("%d\n",rand());
}
¾ßÌåÓ¦ÓÃÈ磬Ҫ²úÉú0µ½10µÄËæ»úÊý rand()%(10 + 1); ¼´ rand()%11; Èô1µ½10 : 1 + rand()%11;ÒÔ´ËÀàÍÆ aµ½b : &nbs ......