C/C++Ö¸Õë
×î½ü¹¤×÷²»½ô£¬³é¿Õ¿´ÁËÏÂC¡¢C++µÄÖ¸Õ룬·¢ÏÖÁËһЩƽʱûעÒâµ½µÄÖ¸ÕëÓ÷¨ºÍÎÊÌâ¡£
1¡¢Ö¸ÕëÒýÓÃ
void func1£¨MYCLASS* &pBuildingElement£©£»
Õ§Ò»¿´£¬¹Ö¹ÖµÄ£¬¿´ÁËϽâÊÍ£¬Ï¸ÏëһϺÍÖ¸ÕëµÄÖ¸ÕëÀàËÆ£º
void func1£¨MYCLASS** pBuildingElement£©£»
¿´ÏÂÃæµÄÀý×Ó£º
...
MyClass* p = new MyClass;
func1(p);
...
func1µÄ¶¨ÒåÈçÏ£º
void func1(MyClass* pMyClass)
{
...
pMyClass = //ÆäËû¶ÔÏóµÄÖ¸Õë
...
}
µÚ¶þÌõÓï¾äfunc1(p);ÔÚº¯Êý¹ý³ÌÖÐÖ»ÐÞ¸ÄÁËpMyClassµÄÖµ¡£²¢Ã»ÓÐÐ޸ĵ÷ÓÃÕߵıäÁ¿pµÄÖµ¡£¼ÙÉèÒªÔÚfunc1ÖÐÐÞ¸ÄpµÄÖµ£¬ÏÖÔÚ¾ÍÓÐÁ½ÖÖ·½·¨£ºÒ»ÊÇÀûÓÃÖ¸ÕëµÄÖ¸Õ룬¶þÊÇÀûÓÃÖ¸ÕëµÄÒýÓá£
ÒÔÉÏ´úÂë¿ÉÐÞ¸ÄΪ£º
//Ö¸ÕëµÄÖ¸Õë
...
MyClass* p = NULL;
func1(&p);
...
func1µÄ¶¨ÒåÈçÏ£º
void func1(MyClass** pMyClass)
{
...
*pMyClass = new MyClass;
...
}
//Ö¸ÕëµÄÒýÓÃ
...
MyClass* p = NULL;
func1(p);
...
func1µÄ¶¨ÒåÈçÏ£º
void func1(MyClass* &pMyClass)
{
...
pMyClass = new MyClass;
...
}
Æäʵ£¬ËüºÍÇ°ÃæÖ¸ÕëµÄÖ¸ÕëÊÇÒ»ÂëÊ£¬Ö»ÊÇÓï·¨ÓÐËù²»Í¬¡£´«µÝµÄʱºò²»Óô«pµÄµØÖ·£¬¶øÊÇÖ±½Ó´«p±¾Éí¡£
ÖÁÓÚ˵ʲô³¡ºÏҪʹÓÃÕâÖÖ·½·¨£¬ÎÒ»á˵£¬¼«ÉÙ¡£MFCÔÚÆä¼¯ºÏÀàÖÐÓõ½ÁËËü--ÀýÈ磬CObList£¬ËüÊÇÒ»¸öCobjectsÖ¸ÕëÁÐ±í¡£
Class CObList : public Cobject
{
……
// »ñÈ¡/ÐÞ¸ÄÖ¸¶¨Î»ÖõÄÔªËØ
Cobject*& GetAt£¨POSITION position£©£»
Cobject* GetAt£¨POSITION position£© const£»
}£»
ÕâÀïÓÐÁ½¸öGetAtº¯Êý£¬¹¦Äܶ¼ÊÇ»ñÈ¡¸ø¶¨Î»ÖõÄÔªËØ¡£Çø±ðºÎÔÚÄØ£¿
2¡¢Êý¾ÝÖ¸Õë
³£¹æÊý¾ÝÖ¸ÕëºÍ³ÉÔ±Êý¾ÝÖ¸Õë
ÕâÀïÖ÷񻃾¼°³ÉÔ±Êý¾ÝÖ¸ÕëµÄÄÚÈÝ¡£
struct MyStruct{
int value;
int key;
}
struct MyStruct me;
struct MyStruct* pMe;
¶¨Òå³ÉÔ±Êý¾ÝÖ¸Õë:
int MyStruct::* pMV = &MyStruct::value;
int MyStruct::* pMK = &MyStruct::key;
ÕâÖÖÖ¸ÕëµÄÓÃ;ÊÇÓÃÓÚÈ¡µÃ½á¹¹³ÉÔ±ÔڽṹÄڵĵØÖ·¡£ÎÒÃÇ¿ÉÒÔͨ¹ý¸ÃÖ¸ÕëÀ´·ÃÎʳÉÔ±Êý¾Ý£º
int value = pMe->*pMV; // È¡µÃpMeµÄvalue³ÉÔ±Êý¾Ý¡£
int key = me.*pMK; // È¡µÃmeµÄkey³ÉÔ±Êý¾Ý¡£
ÄÇô£¬ÔÚʲô³¡ºÏÏ»áʹÓõ½³ÉÔ±Êý¾ÝÖ¸ÕëÄØ£¿
ȷʵ£¬³ÉÔ±Ö¸Õë±¾À´¾Í²»ÊÇÒ»Öֺܳ£ÓõÄÖ¸Õë¡
Ïà¹ØÎĵµ£º
#include <stdio.h>
#define LL unsigned long long int
inline LL mod(LL a,LL b)
{
while (a>=b)
a-=b;
return a;
}
//a*b mod c
inline LL MulAndMod(LL a, LL shl_b,LL c)
{
LL val,pre;
pre = mod(a,c);
val = 0;
......
×¢£ºÇëÔÊÐíÎÒ×ªÔØÄúµÄ¼Ñ×÷
ÔÚwindowsÉÏ¿ª·¢Äܹ»ÔÚlinuxÉϱàÒëµÄC´úÂ룬ÎÒ²éÁ˲éÓÐ2¸öÈí¼þ¿ÉÒÔʵÏÖ£¬Ò»¸öÊÇCygwin£¬Ò»¸öÊÇmingw¡£ÆäÖÐcygwinÊÇÒ»¸öwindowsÉÏlinux»·¾³µÄÄ£Ä⹤¾ß£¬ËûÌṩÁ˺ܶàlinux¹¤¾ßµÄwindowsʵÏÖ°æ±¾£¬ÀýÈçvi£¬emacsµÈµÈ£¬µ±È»Ò²°üÀ¨GCC¡£Ê¹ÓÃmingwµÄºÃ´¦¾ÍÊDZàÒë¹ýµÄ³ÌÐòÖ±½Ó¾Í¿ÉÒÔÅÜÁË£¬¶øcygwinÔòÐè ......
1.´ò¿ª“ÎҵĵçÄÔ”-“¹¤¾ß”-“Îļþ¼ÐÑ¡Ïî”-“²é¿´”-ÔÚ“ÏÔʾËùÓÐÎļþºÍÎļþ¼Ð”Ñ¡Ïîǰ´ò¹´-“È·¶¨”
2.ɾ³ýÒÔÏÂÎļþ¼ÐÖеÄÄÚÈÝ£º
x:\\Documents and Settings\\Óû§Ãû\\Cookies\\ϵÄËùÓÐÎļþ(±£ÁôindexÎļþ)
x:\\Documents and S ......
(Ò»)ÕûÊý·ûºÅµÄÏÝÚå
(¶þ)¸¡µãÊýµÄ±¾ÖÊ
(Èý)¶ÑÕ»µÄÄÚ´æ¹ÜÀí½á¹¹
(ËÄ)·ûºÅ½âÎö
(Îå)¶ÔÆëºÍ×ÜÏß´íÎó
(Áù)º¯ÊýÖ¸Õë
(Æß)Ð麯ÊýµÄʵÏÖ»úÀí
(°Ë)ÒýÓõÄʵÏÖ»úÀí
(¾Å)ÐéÄâ¼Ì³Ð¶ÔÏóµÄÄÚ´æ½á¹¹
(Ê®)»ìºÏ±à³ÌʱµÄ³õʼ»¯Ë³Ðò
(ʮһ)Êý×éºÍÖ¸ÕëµÄÒìͬ ......