cdecl
-
Why? What's so terribly hard about a pointer? Or a pointer that points to yet another pointer? Or giving back all books memory you borrow from a library the operating system? Isn't life also too short to figure out why some automatons you have relied on have failed to guess your intentions once again or to learn endless rules that supossedly prevent them from reaching that point?
At least artificial intelligence already is superior to natural stupidity
CDP1802 wrote:
What's so terribly hard about a pointer?
Nothing is bad about a pointer; now, 50,000 pointers is a different issue entirely (assuming your app will have more than one pointer).
-
Life is WAY too short to code in C/C++. When a translater is needed, it's FAR too complicated to start with.
Everything makes sense in someone's mind
Please tell me more about how you write operating systems and drivers and embedded systems in something other than C. Oh, wait...
See if you can crack this: b749f6c269a746243debc6488046e33f
So far, no one seems to have cracked this!The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."
-
Life is WAY too short to code in C/C++. When a translater is needed, it's FAR too complicated to start with.
Everything makes sense in someone's mind
Kevin Marois wrote:
Life is WAY too short
The same thing could be said for using managed applications.
-
CDP1802 wrote:
What's so terribly hard about a pointer?
Nothing is bad about a pointer; now, 50,000 pointers is a different issue entirely (assuming your app will have more than one pointer).
Oh please. That's why we also don't have to use global variables as only means of storing them anymore. We can encapsulate them in objects or structs. Or we can arrange them in lists, arrays, or whatever you can think of. Yes, you must oversee the entire lifecycle of an object, but no garbage collection can really take that off yor hands completely. And does it really matter that you have to use the destructor of an object to clean up at the end of its lifecycle? To be honest, I still do that by implementing IDispose and Finalize() (which you may coincidentally implement like a C++ destructor as syntactic sugar). The real difference is that you are free to do many potentially dangerous things. When I get a choice between safety or greater control, then I pick control. C++ assumes that you know what you are doing and avoids wasting resources on checking things that need not to be checked, managing things that need not to be managed or preventing things that need not be prevented. That leaves the responsibility to take care of those things with you and that is also then the place where you need some knowledge, experience and good practices.
At least artificial intelligence already is superior to natural stupidity
-
Oh please. That's why we also don't have to use global variables as only means of storing them anymore. We can encapsulate them in objects or structs. Or we can arrange them in lists, arrays, or whatever you can think of. Yes, you must oversee the entire lifecycle of an object, but no garbage collection can really take that off yor hands completely. And does it really matter that you have to use the destructor of an object to clean up at the end of its lifecycle? To be honest, I still do that by implementing IDispose and Finalize() (which you may coincidentally implement like a C++ destructor as syntactic sugar). The real difference is that you are free to do many potentially dangerous things. When I get a choice between safety or greater control, then I pick control. C++ assumes that you know what you are doing and avoids wasting resources on checking things that need not to be checked, managing things that need not to be managed or preventing things that need not be prevented. That leaves the responsibility to take care of those things with you and that is also then the place where you need some knowledge, experience and good practices.
At least artificial intelligence already is superior to natural stupidity
CDP1802 wrote:
IDispose and Finalize()
They are vastly inferior to C++ destructors. Give me RAII, or give me Death!
-
Please tell me more about how you write operating systems and drivers and embedded systems in something other than C. Oh, wait...
See if you can crack this: b749f6c269a746243debc6488046e33f
So far, no one seems to have cracked this!The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."
Here's a prime example ... http://en.wikipedia.org/wiki/Prime_Computer[^]
-
Please tell me more about how you write operating systems and drivers and embedded systems in something other than C. Oh, wait...
See if you can crack this: b749f6c269a746243debc6488046e33f
So far, no one seems to have cracked this!The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."
... and another. http://www.menuetos.net/[^]
-
Please tell me more about how you write operating systems and drivers and embedded systems in something other than C. Oh, wait...
See if you can crack this: b749f6c269a746243debc6488046e33f
So far, no one seems to have cracked this!The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."
-
Life is WAY too short to code in C/C++. When a translater is needed, it's FAR too complicated to start with.
Everything makes sense in someone's mind
I'd fire anyone working for me who used a declaration like the OP's example. Encapsulation and information hiding principles dictate that you wouldn't dig that far into a data structure using direct pointers.
Software Zen:
delete this;
-
... and another. http://www.menuetos.net/[^]
Yes I am aware of Fortran and Assembly being used in operating systems, as I myself work on operating system programming, I was simple ranting at how the poster had suggested that C and C++ are not useful.
See if you can crack this: b749f6c269a746243debc6488046e33f
So far, no one seems to have cracked this!The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."
-
C gibberish to English translator[^]
char ** const * const x
-> declare x as const pointer to const pointer to pointer to charArguably a shameless plug, but my article is several years old and I'm neither a dev anymore nor care about the points.... How to interpret complex C/C++ declarations[^] It talks about cdecl as well :)
Cheers, विक्रम "We have already been through this, I am not going to repeat myself." - fat_boy, in a global warming thread :doh:
-
Life is WAY too short to code in C/C++. When a translater is needed, it's FAR too complicated to start with.
Everything makes sense in someone's mind
Life is too short to be spent coding. ;P