ÉèΪÊ×Ò³ ¼ÓÈëÊÕ²Ø

TOP

ÍøÉÏÁ÷´«µÄC++ÃæÊÔÌâ(Ò»)
2014-11-24 01:43:19 ¡¾´ó ÖРС¡¿ ä¯ÀÀ:783´Î
Tags£ºÍøÉÏ Á÷´« ÊÔÌâ

1.ÊDz»ÊÇÒ»¸ö¸¸ÀàдÁËÒ»¸övirtual º¯Êý£¬Èç¹û×ÓÀา¸ÇËüµÄº¯Êý²»¼Óvirtual ,Ò²ÄÜʵÏÖ¶à̬
virtualÐÞÊηû»á±»ÒþÐμ̳еġ£
private Ò²±»¼¯³É£¬Ö»ÊÂÅÉÉúÀàûÓзÃÎÊȨÏÞ¶øÒÑ
virtual¿É¼Ó¿É²»¼Ó
×ÓÀàµÄ¿Õ¼äÀïÓи¸ÀàµÄËùÓбäÁ¿(static³ýÍâ)
ͬһ¸öº¯ÊýÖ»´æÔÚÒ»¸öʵÌå(inline³ýÍâ)
×ÓÀา¸ÇËüµÄº¯Êý²»¼Óvirtual ,Ò²ÄÜʵÏÖ¶à̬¡£
ÔÚ×ÓÀàµÄ¿Õ¼äÀÓи¸ÀàµÄ˽ÓбäÁ¿¡£Ë½ÓбäÁ¿²»ÄÜÖ±½Ó·ÃÎÊ¡£


¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¨C
2.ÊäÈëÒ»¸ö×Ö·û´®£¬½«ÆäÄæÐòºóÊä³ö¡££¨Ê¹ÓÃC++£¬²»½¨ÒéÓÃαÂ룩
#include
using namespace std;


void main()
{
char a[50];memset(a,0,sizeof(a));
int i=0,j;
char t;
cin.getline(a,50,¡¯\n¡¯);
for(i=0,j=strlen(a)-1;i {
t=a[i];
a[i]=a[j];
a[j]=t;
}
cout< }
//µÚ¶þÖÖ
string str;
cin>>str;
str.replace;
cout< »òÕßÖ±½ÓÓÃSTLÀïÏֳɵÄËã·¨£¬¸üÊ¡Ê£¬ºÙºÙ
#include
#include
#include
using namespace std;
int main()
{
string str;
getline(cin,str);
reverse(str.begin(), str.end());
cout<<"str Reversed:"< system("pause");
return 0;


--------------------------------------------------------------------------
3.Çë¼òµ¥ÃèÊöWindowsÄÚ´æ¹ÜÀíµÄ·½·¨¡£
ÄÚ´æ¹ÜÀíÊDzÙ×÷ϵͳÖеÄÖØÒª²¿·Ö£¬Á½Èý¾ä»°¿ÖÅÂ˭Ҳ˵²»Çå³þ°É¡«¡«
ÎÒÏÈ˵¸ö´ó¸Å£¬Ï£ÍûÄܹ»Å×שÒýÓñ°É
µ±³ÌÐòÔËÐÐʱÐèÒª´ÓÄÚ´æÖжÁ³öÕâ¶Î³ÌÐòµÄ´úÂë¡£´úÂëµÄλÖñØÐëÔÚÎïÀíÄÚ´æÖвÅÄܱ»ÔËÐУ¬ÓÉÓÚÏÖÔڵIJÙ×÷ϵͳÖÐÓзdz£¶àµÄ³ÌÐòÔËÐÐ×Å£¬ÄÚ´æÖв»Äܹ»ÍêÈ«·ÅÏ£¬ËùÒÔÒý³öÁËÐéÄâÄÚ´æµÄ¸ÅÄî¡£°ÑÄÄЩ²»³£ÓõijÌÐòƬ¶Ï¾Í·ÅÈëÐéÄâÄڴ棬µ±ÐèÒªÓõ½ËüµÄʱºòÔÚloadÈëÖ÷´æ£¨ÎïÀíÄڴ棩ÖС£Õâ¸ö¾ÍÊÇÄÚ´æ¹ÜÀíËùÒª×öµÄÊ¡£ÄÚ´æ¹ÜÀí»¹ÓÐÁíÍâÒ»¼þÊÂÐèÒª×ö£º¼ÆËã³ÌÐòƬ¶ÎÔÚÖ÷´æÖеÄÎïÀíλÖã¬ÒÔ±ãCPUµ÷¶È¡£
ÄÚ´æ¹ÜÀíÓпéʽ¹ÜÀí£¬Ò³Ê½¹ÜÀí£¬¶ÎʽºÍ¶Îҳʽ¹ÜÀí¡£ÏÖÔÚ³£ÓöÎҳʽ¹ÜÀí
¿éʽ¹ÜÀí£º°ÑÖ÷´æ·ÖΪһ´ó¿é¡¢Ò»´ó¿éµÄ£¬µ±ËùÐèµÄ³ÌÐòƬ¶Ï²»ÔÚÖ÷´æʱ¾Í·ÖÅäÒ»¿éÖ÷´æ¿Õ¼ä£¬°Ñ³Ì ÐòƬ¶ÏloadÈëÖ÷´æ£¬¾ÍËãËùÐèµÄ³ÌÐòƬ¶ÈÖ»Óм¸¸ö×Ö½ÚÒ²Ö»ÄÜ°ÑÕâÒ»¿é·ÖÅä¸øËü¡£ÕâÑù»áÔì³ÉºÜ´óµÄÀË·Ñ£¬Æ½¾ùÀË·ÑÁË50£¥µÄÄÚ´æ¿Õ¼ä£¬µ«Ê±Ò×ÓÚ¹ÜÀí¡£
ҳʽ¹ÜÀí£º°ÑÖ÷´æ·ÖΪһҳһҳµÄ£¬Ã¿Ò»Ò³µÄ¿Õ¼äÒª±ÈÒ»¿éÒ»¿éµÄ¿Õ¼äСºÜ¶à£¬ÏÔÈ»ÕâÖÖ·½·¨µÄ¿Õ¼äÀûÓÃÂÊÒª±È¿éʽ¹ÜÀí¸ßºÜ¶à¡£
¶Îʽ¹ÜÀí£º°ÑÖ÷´æ·ÖΪһ¶ÎÒ»¶ÎµÄ£¬Ã¿Ò»¶ÎµÄ¿Õ¼äÓÖÒª±ÈÒ»Ò³Ò»Ò³µÄ¿Õ¼äСºÜ¶à£¬ÕâÖÖ·½·¨ÔÚ¿Õ¼äÀûÓÃÂÊÉÏÓÖ±Èҳʽ¹ÜÀí¸ßºÜ¶à£¬µ«ÊÇÒ²ÓÐÁíÍâÒ»¸öȱµã¡£Ò»¸ö³ÌÐòƬ¶Ï¿ÉÄܻᱻ·ÖΪ¼¸Ê®¶Î£¬ÕâÑùºÜ¶àʱ¼ä¾Í»á±»ÀË·ÑÔÚ¼ÆËãÿһ¶ÎµÄÎïÀíµØÖ·ÉÏ£¨¼ÆËã»ú×îºÄʱ¼äµÄ´ó¼Ò¶¼ÖªµÀÊÇI/O°É£©¡£
¶Îҳʽ¹ÜÀí£º½áºÏÁ˶Îʽ¹ÜÀíºÍҳʽ¹ÜÀíµÄÓŵ㡣°ÑÖ÷´æ·ÖΪÈô¸ÉÒ³£¬Ã¿Ò»Ò³ÓÖ·ÖΪÈô¸É¶Î¡£ºÃ´¦¾ÍºÜÃ÷ÏÔ£¬²»ÓÃÎÒ¶à˵ÁË°É¡£
¸÷ÖÖÄÚ´æ¹ÜÀí¶¼ÓÐËü×Ô¼ºµÄ·½·¨À´¼ÆËã³ö³ÌÐòƬ¶ÏÔÚÖ÷´æÖеÄÎïÀíµØÖ·£¬Æäʵ¶¼ºÜÏàËÆ¡£
ÕâÖ»ÊÇÒ»¸ö´ó¸Å¶øÒÑ£¬²»×ãÒÔ˵Ã÷ÄÚ´æ¹ÜÀíµÄƤë¡£ÎÞÂÛÄÄÒ»±¾²Ù×÷ϵͳÊéÉ϶¼ÓÐÏêϸµÄ½²½â


--------------------------------------------------------------------------
4.
#include "stdafx.h"
#define SQR(X) X*X
int main(int argc, char* argv[])
{
int a = 10;
int k = 2;
int m = 1;
a /= SQR(k+m)/SQR(k+m);
printf("%d\n",a);
return 0;
}
ÕâµÀÌâÄ¿µÄ½á¹ûÊÇʲô°¡
define Ö»ÊǶ¨Òå¶øÒÑ£¬ÔÚ±àÔñʱֻÊǼòµ¥´ú»»X*X¶øÒÑ£¬²¢²»¾­¹ýËãÊõ·¨ÔòµÄ
a /= (k+m)*(k+m)/(k+m)*(k+m);
=>a /= (k+m)*1*(k+m);
=>a = a/9;
=>a = 1;
¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¨C
5.
const ·ûºÅ³£Á¿£»
(1)const char *p
(2)char const *p
(3)char * const p
˵Ã÷ÉÏÃæÈýÖÖÃèÊöµÄÇø±ð£»


Èç¹ûconstλÓÚÐǺŵÄ×ó²à£¬Ôòconst¾ÍÊÇÓÃÀ´ÐÞÊÎÖ¸ÕëËùÖ¸ÏòµÄ±äÁ¿£¬¼´Ö¸ÕëÖ¸ÏòΪ³£Á¿£»
Èç¹ûconstλÓÚÐǺŵÄÓҲ࣬const¾ÍÊÇÐÞÊÎÖ¸Õë±¾Éí£¬¼´Ö¸Õë±¾ÉíÊdz£Á¿¡£
(1)const char *p
Ò»¸öÖ¸ÏòcharÀàÐ͵Äconst¶ÔÏóÖ¸Õ룬p²»Êdz£Á¿,ÎÒÃÇ¿ÉÒÔÐÞ¸ÄpµÄÖµ£¬Ê¹ÆäÖ¸Ïò²»Í¬µÄchar£¬µ«ÊDz»ÄܸıäËüÖ¸Ïò·Çchar¶ÔÏó£¬È磺
const char *p;
char c1=¡¯a';
char c2=¡¯b';
p=&c1;//ok
p=&c2;//ok
*p=c1;//error
(2)char const *p
(3)char * const p
ÕâÁ½¸öºÃÏóÊÇÒ»ÑùµÄ£¬´Ëʱ*p¿ÉÒÔÐ޸ģ¬¶øp²»ÄÜÐ޸ġ£
´í£¡const char *pÓ¦¸ÃÓëchar const *pÊÇÒ»ÑùµÄ²Å¶Ô£¡´Ëʱ*p²»¿ÉÐ޸ģ¬¶øpÊÇ¿ÉÒÔÐ޸ĵģ¡
(4)const char * const p
ÕâÖÖÊǵØÖ·¼°Ö¸Ïò¶ÔÏ󶼲»ÄÜÐ޸ġ£
¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¨C
6.ÏÂÃæÊÇCÓïÑÔÖÐÁ½ÖÖifÓï¾äÅжϷ½Ê½¡£ÇëÎÊÄÄÖÖд·¨¸üºÃ£¿ÎªÊ²Ã´£¿
int n;
if (n == 10) // µÚÒ»ÖÖÅжϷ½Ê½
if (10 == n) // µÚ¶þÖÖÅжϷ½Ê½
Èç¹ûÉÙÁ˸ö=ºÅ,±àÒëʱ¾Í»á±¨´í,¼õÉÙÁ˳ö´íµÄ¿ÉÄÜÐÐ,¿ÉÒÔ¼ì²â³öÊÇ·ñÉÙÁË=
¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¨C
7.ÏÂÃæµÄ´úÂëÓÐʲôÎÊÌ⣿
void DoSomeThing(¡­)
{
char* p;
¡­
p = malloc(1024); // ·ÖÅä1KµÄ¿Õ¼ä
if (NULL == p)
return;
¡­
p = realloc(p, 2048); // ¿Õ¼ä²»¹»£¬ÖØзÖÅäµ½2K
if (NULL == p)
return;
¡­
}
A:
p = malloc(1024); Ó¦¸Ãд³É£º p = (char *) malloc(1024);
ûÓÐÊÍ·ÅpµÄ¿Õ¼ä£¬Ôì³ÉÄÚ´æй©¡£


¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¨C
8.ÏÂÃæµÄ´úÂëÓÐʲôÎÊÌ⣿²¢Çë¸ø³öÕýÈ·µÄд·¨¡£
void DoSomeThing(char* p)
{
char str[16];
int n;
assert(NULL != p);
sscanf(p, ¡°%s%d¡±, str, n);
if (0 == strcmp(str, ¡°something¡±))
{
¡­
}
}
A:
sscanf(p, ¡°%s%d¡±, str, n); Õâ¾ä¸Ãд³É£º sscanf(p, ¡°%s%d¡±, str, &n);
ÓÉÓÚstrÓÐÏÞ£¬Èç¹ûÊäÈëµÄ×Ö·û´®¹ý´ó£¬»áÒý·¢¶ÑÕ»Òç³ö£¡£¡£¡
¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¨C
9.ÏÂÃæ´úÂëÓÐʲô´íÎó
Void test1()
{
char string[10];
char *str1=¡±0123456789¡å;
strcpy(string, str1);
}
Êý×éÔ½½ç
¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¨C
10.ÏÂÃæ´úÂëÓÐʲôÎÊÌâ
Void test2()
{
char string[10], str1[

Ê×Ò³ ÉÏÒ»Ò³ 1 2 3 4 5 6 ÏÂÒ»Ò³ βҳ 1/6/6
¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿ ¡¾·±Ìå¡¿¡¾Í¶¸å¡¿¡¾Êղء¿ ¡¾ÍƼö¡¿¡¾¾Ù±¨¡¿¡¾ÆÀÂÛ¡¿ ¡¾¹Ø±Õ¡¿ ¡¾·µ»Ø¶¥²¿¡¿
ÉÏһƪ£ºJava»ù´¡ÖªÊ¶ÃæÊÔÌâÒì³£Ïà¹ØµÄÑ¡.. ÏÂһƪ£º»ªÎªÂß¼­ÍÆÀíÌâ

×îÐÂÎÄÕÂ

ÈÈÃÅÎÄÕÂ

Hot ÎÄÕÂ

Python

C ÓïÑÔ

C++»ù´¡

´óÊý¾Ý»ù´¡

linux±à³Ì»ù´¡

C/C++ÃæÊÔÌâÄ¿