ARM ±ê×¼C/C++ ÔËÐÐʱ¿â
1.
ÔËÐÐʱ¿âµÄ·¾¶
Ö¸¶¨·½Ê½£º
£¨1£©
Á¬½ÓÑ¡Ïî
–libpath
£¨2£©
»·¾³±äÁ¿
ARMLIB
ÓÅÏȼ¶£º
libpath
¸ßÓÚ
ARMLIB
±»Ö¸¶¨µÄ·¾¶£º
°üº¬
armlib, cpplib
µÄ¸¸Â·¾¶¡£
2.
ÔËÐÐʱ¿âµÄÃüÃû¸ñʽ¡£
C/C++
ÔËÐÐʱ¿â¸ñʽ£º
Root_<arch><fpu><dfmt><stack><entrant>.<endian>
Root
ȡֵÈçÏ£º
c
– ANSI C
¼°
C++
»ù±¾ÔËÐÐʱ֧³Ö¡£
f
– C/Java
µÄ¸¡µãËãÊõÔËËãÖ§³Ö¡£
g
– IEEE
µÄ¸¡µãËãÊõÔËËãÖ§³Ö
m
–
³¬Ô½ÀàÊýѧº¯Êý¡£
cpp
–
ÎÞ¸¡µãËãÊýÔËËãµÄ¸ß¼¶
C++
ËãÊý
cppfp
–
Óи¡µãËãÊýÔËËãµÄ¸ß¼¶
C++
ËãÊý
arch
ȡֵÈçÏ£º
a
– ARM
ÔËÐÐʱ¿â
t
– Thumb
ÔËÐÐʱ¿â
fpu
ȡֵÈçÏ£º
f
–
ʹÓÃ
FPA
Ö¸Á
v
–
ʹÓÃ
VFP
Ö¸Á
-
-
²»Ê¹Óø¡µãÔËËãÖ¸Áî
dmft
ȡֵÈçÏ£º
p
–
µ¥´¿ÄÚ´æÄ£Ê½£¨
endian
¸ñʽ£©µÄË«¾«¶È¸ñʽ
m
–
»ìºÏÄÚ´æÄ£Ê½£¨
endian
¸ñʽ£©µÄË«¾«¶È¸ñʽ
-
-
²»Ê¹ÓÃË«¾«¶È¸¡µãÊý¡£
Stack
ȡֵÈçÏ£º
u
–
²»Ê¹ÓÃÈí¼þµÄÊý¾ÝÕ»Òç³ö¼ì²é
s
-
ʹÓÃÈí¼þµÄÊý¾ÝÕ»Òç³ö¼ì²é
-
-
δ¹æ¶¨¸ÃÑ¡Ïî
entrant
ȡֵÈçÏ£º
&nb
Ïà¹ØÎĵµ£º
Õ»£ºº¯Êýµ÷ÓõÄʱºò£¬ÔÚÕ»Öб£´æ¾Ö²¿±äÁ¿ºÍº¯Êý²ÎÊýµÈ¡£µ±º¯Êý·µ»ØÊ±£¬×Ô¶¯Çå³ýÕ»¡£
×ÔÓÉ´æ´¢Çø£ºÒ²³ÆÎª¶Ñ(heap)£¬¿ÉÒÔ¿´×÷´óÁ¿µÄÄÚ´æ¶Î¡£Í¨¹ý new ²Ù×÷·û·ÖÅäµÄÄÚ´æÔÚ¶ÑÖС£³ÌÐò½áÊøÖ®Ç°²»×Ô¶¯Çå³ý×ÔÓÉ´æ´¢Çø¡£ÐèÒªÓɳÌÐòÀ´¸ºÔðÊÍ·Å£¨delete£©¡£
1.
¶ÔÖ¸ÏòÕ»ÉÏÄÚ´æµÄÖ¸Õëµ÷ÓÃdelete»áµ¼Ö³ÌÐòCrash¡£
2.
new ½ø ......
ÓÐÈçϳÌÐò£º
//-----------------
class A
{
public:
A()
{
printf( "base A\r\n" );
}
virtual ~A()
{
printf( "base ~A\r\n" );
}
public:
virtual void VirtualFunc()
{
printf( "base VirtualFunc\r\n" );
};
void Func()
{
printf( "base Func\r\n" );
}
void F1()
{
pr ......
[×¢]£º×î½üÔÚ×öUVCÃèÊö·ûµÄ±à¼¹¤¾ß£¬Óõ½ºÜ¶àµÄ½á¹¹£¬ÎªÁË·½±ã°Ñ½á¹¹Ìåд³ÉbinÎļþ£¬ÐèÒª°Ñ½á¹¹ÌåÖÐÌî³äµÄ×Ö½ÚÈ¥µô£¬ÔÚÍøÉÏËÑË÷µÃµ½ÕâÆªÎÄÕ£¬¸Ð¾õͦºÃµÄ£¬×ª¹ýÀ´×ö¸ö¼ÍÄî¡£
½á¹¹Ìå(struct)µÄsizeofÖµ£¬²¢²»ÊǼòµ¥µÄ½«ÆäÖи÷ÔªËØËùÕ¼×Ö½ÚÏà¼Ó£¬¶øÊÇÒª¿¼Âǵ½´æ´¢¿Õ¼äµÄ×Ö½Ú¶ÔÆëÎÊÌâ¡£ÏÈ¿´ÏÂÃæ¶¨ÒåµÄÁ½¸ö½á¹¹Ìå.
struct
......
±¾ÎÄÊ×·¢µØÖ·£ºhttp://blog.csdn.net/liigo/archive/2009/09/22/4582018.aspx
×ªÔØÇë×¢Ã÷³ö´¦£ºhttp://blog.csdn.net/liigo
×÷Õߣºliigo, 2009/09/22
¡¡¡¡ÔÚÏÂΧÆåʱ£¬µ±Ò»¸öÆå×ÓÂäµ½ÆåÅÌÉÏ£¬Ëü»á¶ÔÖÜΧ¶Ô·½Æå×ÓµÄËÀ»î²úÉúÓ°Ï죬Èç¹û¶Ô·½Æå×ÓûÓÐÆøÁË£¨ËÀÁË£©£¬±ØÐë´ÓÆåÅÌÉÏÄõô£¨Ìá×Ó£©¡£Õâ¸ö¹ý³ÌÌåÏÖµ½Î§ÆåÈí¼þÖУ¬¾ÍÐ ......
Precedence Operator Description Example Overloadable Associativity
1
::
Scope resolution operator
Class::age = 2;
no
none
2
()
()
[]
->
.
++
--
const_cast
dynamic_cast
static_cast
reinterpret_cast
typeid
Function call
Member initalization
Array access
Member access from ......