改进指针编程 [英] to improve programming in pointers

查看:57
本文介绍了改进指针编程的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何通过更多的阅读和练习,使用c ++来提高我的指针编程技巧

解决方案




Ben


si * **********@gmail.com 写道:

我如何使用c ++提高我的指针编程技巧



去寻找这些问题的答案。

struct A {int a; };


结构B:A {int b; };


A xa [10];

B xb [10];


A * pa = xb;

// Q1 - pa指向的值是多少?


A * pBAD = pa + 1;

// Q2 - 为什么是pBAD,不好?


B * pb = xb;

// - 与Q1相同

A * paOK = pb + 1;

// Q3 - paok指向什么?

A(&(* pf)(int * ))[10];

// Q4 - 什么是pf?


A * paX =& pb [1];


bool b(paX == paOK);

// Q5 - b的值是多少?


A * paY =& pb [3];


int iNOTGOOD(paY - paX);

// Q6 - 为什么iNOTGOOD不好?

A * paM =新B;


int main()

{


删除PAM; //行Z - 不好

// Q7 - 为什么Z行是坏事?


paM = 0;

// Q8 - 什么是paM?


删除paM;

// Q9 - 删除paM做了什么?

bool x(&(* xb).b ==& xb-> b);

// Q10 - x的值是多少?

}


B * F()

{

B x [2];


返回x; // doh!

// Q11 - 为什么行标记为doh坏了?

}


si *********** @ gmail.com écrit:

我如何使用c ++提高指针的编程技巧



你甚至不应该使用指针。

尽可能避免使用它们,只在需要时使用它们。

how i can improve my programming skill in pointer using c++

解决方案

by more reading and practices.

Ben


si***********@gmail.com wrote:

how i can improve my programming skill in pointer using c++



Go find the answers to these questions.
struct A { int a; };

struct B : A { int b; };

A xa[ 10 ];
B xb[ 10 ];

A * pa = xb;
// Q1 - what is the value of pa pointing to ?

A * pBAD = pa + 1;
// Q2 - why is pBAD, bad ?

B * pb = xb;
// - same as Q1

A * paOK = pb + 1;
// Q3 - what does paOK point to ?
A (&( * pf )( int * ))[ 10 ];
// Q4 - what is pf ?

A * paX = & pb[1];

bool b( paX == paOK );
// Q5 - what is the value of b

A * paY = & pb[3];

int iNOTGOOD( paY - paX );
// Q6 - Why is iNOTGOOD not good ?

A * paM = new B;

int main()
{

delete paM; // line Z - NOT GOOD
// Q7 - why is line Z a bad thing ?

paM = 0;
// Q8 - what is paM now ?

delete paM;
// Q9 - what does delete paM do ?

bool x( & (* xb).b == & xb->b );
// Q10 - What is the value of x ?
}

B * F()
{
B x[2];

return x; // doh !
// Q11 - Why is the line marked "doh" broken ?
}


si***********@gmail.com a écrit :

how i can improve my programming skill in pointer using c++



You shouldn''t even use pointers.
Avoid them as much as possible and only use them when it''s needed.


这篇关于改进指针编程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆