Click here to Skip to main content
15,884,425 members

Welcome to the Lounge

   

For discussing anything related to a software developer's life but is not for programming questions. Got a programming question?

The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.

 
GeneralRe: The mystery of the disappearing socks Pin
TheGreatAndPowerfulOz29-Jun-20 9:59
TheGreatAndPowerfulOz29-Jun-20 9:59 
GeneralRe: The mystery of the disappearing socks Pin
dandy7229-Jun-20 10:36
dandy7229-Jun-20 10:36 
GeneralThe most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
honey the codewitch29-Jun-20 5:57
mvahoney the codewitch29-Jun-20 5:57 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
Richard MacCutchan29-Jun-20 6:24
mveRichard MacCutchan29-Jun-20 6:24 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
Sander Rossel29-Jun-20 8:25
professionalSander Rossel29-Jun-20 8:25 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
Richard MacCutchan29-Jun-20 9:23
mveRichard MacCutchan29-Jun-20 9:23 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
David O'Neil29-Jun-20 10:06
professionalDavid O'Neil29-Jun-20 10:06 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
Greg Utas29-Jun-20 14:08
professionalGreg Utas29-Jun-20 14:08 
Working in C, and doing it well, requires an unusual level of discipline. For many years, I worked in a similar proprietary language. But it had better typing and other concepts alien to C (more like Modula, say), which was one reason we could compete with larger firms that used C.

Much of our better software was rather object-oriented, but it was done manually. A struct containing function signatures would be defined. This was effectively an abstract class. A concrete class would populate it with function pointers and register it against a type index so that it could be invoked polymorphically, through an array of such structs. There were even some ad hoc examples of inheritance.

Building these things by hand was tedious, but it worked well when people took the time. Naturally, there were also horrors like deeply nested functions, a surfeit of global variables, obscure side effects, and bugs fixed by
IF(the conditions under which bug report#aannnn occur are true)
THEN
   update a little of this and a little of that so the code can carry on successfully;
ENDIF;
This isn't necessarily a problem restricted to procedural languages, but I find that C++ does a better job of encouraging one to find the root causes of problems instead of working around them, which helps to both keep the code cleaner and evolve the system. Not to mention that having polymorphism, inheritance, and encapsulation built into the language saves a lot of time!

GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
David O'Neil29-Jun-20 15:30
professionalDavid O'Neil29-Jun-20 15:30 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
Greg Utas29-Jun-20 23:41
professionalGreg Utas29-Jun-20 23:41 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
kalberts30-Jun-20 1:34
kalberts30-Jun-20 1:34 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
Greg Utas30-Jun-20 1:56
professionalGreg Utas30-Jun-20 1:56 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
kalberts30-Jun-20 3:02
kalberts30-Jun-20 3:02 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
David O'Neil30-Jun-20 3:28
professionalDavid O'Neil30-Jun-20 3:28 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
David O'Neil30-Jun-20 4:27
professionalDavid O'Neil30-Jun-20 4:27 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
Greg Utas30-Jun-20 7:23
professionalGreg Utas30-Jun-20 7:23 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
David O'Neil30-Jun-20 7:55
professionalDavid O'Neil30-Jun-20 7:55 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
Greg Utas30-Jun-20 8:15
professionalGreg Utas30-Jun-20 8:15 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
David O'Neil30-Jun-20 9:06
professionalDavid O'Neil30-Jun-20 9:06 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
kalberts30-Jun-20 10:18
kalberts30-Jun-20 10:18 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
Greg Utas30-Jun-20 13:15
professionalGreg Utas30-Jun-20 13:15 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
honey the codewitch29-Jun-20 15:51
mvahoney the codewitch29-Jun-20 15:51 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
honey the codewitch29-Jun-20 15:46
mvahoney the codewitch29-Jun-20 15:46 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
David O'Neil29-Jun-20 16:08
professionalDavid O'Neil29-Jun-20 16:08 
GeneralRe: The most complicated P/Invoke call I've ever had to make from C# and it's a doozy Pin
Richard MacCutchan29-Jun-20 21:43
mveRichard MacCutchan29-Jun-20 21:43 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.