you ever worked with any type of API?
Telling all new programmers that they *shouldn't use pointers* is abserd, 
especially if the windows API takes 10000 pointers per function, as with other 
APIs.

Thanks,
Tyler Littlefield
http://tysdomain.com

  ----- Original Message ----- 
  From: Tamas Marki 
  To: [email protected] 
  Sent: Friday, January 09, 2009 6:20 AM
  Subject: Re: [c-prog] Re: function returning a 2D array?


  On Fri, Jan 9, 2009 at 1:55 PM, Tyler Littlefield <[email protected]> wrote:
  > I still haven't figured out why people avoid type casts like the plague.
  > You'll survive through their usage. If you type cast things just to "make
  > them work," then it is bad practice, but for something like that it's
  > harmless. People suggested wrapping the array up in a struct/class, which
  > requires an object per-array that you want to pass around, (tacky?). People
  > have also suggested containers. As he hasn't gotten the hang of pointers
  > quite yet (or so it seems from post), I'd assume that he'd like to just
  > stick to a 2-d array, and not some "better method."

  Typecasting can be a source of very hard to detect errors. It is
  basically a way of telling the compiler 'this is a pointer to apple'
  when you have say a pointer to a peach, so in essence you're lying to
  the compiler to silence some errors.
  One of C++'s design goals were to avoid the 'pointer hell' that could
  ensue in a C program when you're abusing pointers and typecasts.
  Ideally most C++ programs should not use pointers at all, instead use
  containers to store multiple instances. Carrying over C-style
  paradigms to C++ is bad practice.
  Beginners of C++ should not be concerned with pointers at all. One of
  the best starting books for C++ is Koenig and Moo's Accelerated C++,
  which avoids pointers until something like chapter 10.
  In case you absolutely would like to do casting in C++, then use C++
  style casts (static_cast, dynamic_cast, reinterpret_cast), instead of
  plain C-style casting, as they can catch errors the latter can't.

  -- 
  Tamas Marki


   

  __________ NOD32 3752 (20090108) Information __________

  This message was checked by NOD32 antivirus system.
  http://www.eset.com


[Non-text portions of this message have been removed]

Reply via email to