CodeGuru Home VC++ / MFC / C++ .NET / C# Visual Basic VB Forums Developer.com
Page 3 of 4 FirstFirst 1234 LastLast
Results 31 to 45 of 50
  1. #31
    Arjay's Avatar
    Arjay is offline Moderator / EX MS MVP Power Poster
    Join Date
    Aug 2004
    Posts
    13,490

    Re: Input wanted: 3rd Party Products

    Quote Originally Posted by John E View Post
    But (importantly) C++ isn't among them - and I think the ones that do target those other OS's are the low power languages (which run via some kind of runtime interpreter).
    Yes, the world has evolved.

  2. #32
    Join Date
    Feb 2017
    Posts
    677

    Re: Input wanted: 3rd Party Products

    Quote Originally Posted by John E View Post
    ... the ones that do target those other OS's are the low power languages (which run via some kind of runtime interpreter).
    There is no such thing as a low power language because whether a language runs as compiled or interpreted is not a property of the language itself. All languages can be run both as compiled or interpreted.

    Furthermore, there are interpretators that effectively run compiled native code. They're called Just-In-Time (JIT) compilers and this is how both the Java Virtual Machine (JVM) and the Common Language Runtime (CLR) of .NET work.

    https://en.wikipedia.org/wiki/Just-in-time_compilation

    It means today all major languages are effectively compiled. For general applications it's no longer possible to claim that a compiled C++ program will perform better than the same program written in another language that runs on the JVM or the CLR. This is also why C++ is under pressure. It can no longer pull rank when it comes to efficiency. Other factors jump to the foreground when it's decided which language to use.
    Last edited by wolle; October 14th, 2019 at 01:57 AM.

  3. #33
    John E is offline Elite Member Power Poster
    Join Date
    Apr 2001
    Location
    Manchester, England
    Posts
    4,835

    Re: Input wanted: 3rd Party Products

    Thanks wolle. Do any of you guys have experience with C++/CLI? Apparently it's a set of extensions which allow C++ code to be compiled to run under CLR and .NET (rather than being platform specific) and it's effectively a replacement for the now deprecated Managed C++.

    I'm guessing there must be limitations (maybe all the supporting DLLs need to use C++/CLI too?)
    "A problem well stated is a problem half solved.” - Charles F. Kettering

  4. #34
    2kaud's Avatar
    2kaud is offline Super Moderator Power Poster
    Join Date
    Dec 2012
    Location
    England
    Posts
    7,822

    Re: Input wanted: 3rd Party Products

    All advice is offered in good faith only. All my code is tested (unless stated explicitly otherwise) with the latest version of Microsoft Visual Studio (using the supported features of the latest standard) and is offered as examples only - not as production quality. I cannot offer advice regarding any other c/c++ compiler/IDE or incompatibilities with VS. You are ultimately responsible for the effects of your programs and the integrity of the machines they run on. Anything I post, code snippets, advice, etc is licensed as Public Domain https://creativecommons.org/publicdomain/zero/1.0/ and can be used without reference or acknowledgement. Also note that I only provide advice and guidance via the forums - and not via private messages!

    C++23 Compiler: Microsoft VS2022 (17.6.5)

  5. #35
    Join Date
    Feb 2017
    Posts
    677

    Re: Input wanted: 3rd Party Products

    Quote Originally Posted by John E View Post
    Do any of you guys have experience with C++/CLI?
    Yes I evaluated C++/CLI for use in a new application many years ago as an alternative to C#. The idea was that it would allow me to write a proper Windows application for example using WPF for a GUI while still writing the internal core stuff in portable standard C++.

    The problem at that time was that almost no one seemed to be using C++/CLI. There wasn't much info about the language, not many examples, no developer community and no clear info about the direction of the language, so I decided against the idea.

    But it seems Microsoft is still supporting C++/CLI actively. This is the most recent info I could find,

    https://msft.today/the-future-of-c-cli-and-net-core-3/

    (Warning. Kaspersky told me this site is unsafe but I took a chance since it's Microsoft after all)

    I would carefully analyze every word in this article with a magnifying glass and make sure I fully understood every implication before committing to C++/CLI.
    Last edited by wolle; October 14th, 2019 at 12:59 AM.

  6. #36
    Join Date
    Feb 2018
    Posts
    1

    Re: Input wanted: 3rd Party Products

    Thank you so much for the commenters. IT really clear my all doubts.

  7. #37
    John E is offline Elite Member Power Poster
    Join Date
    Apr 2001
    Location
    Manchester, England
    Posts
    4,835

    Re: Input wanted: 3rd Party Products

    Incidentally... I discovered recently that msbuild projects can now be configured to use a compiler called Clang, as an alternative to Visual C++. Clang allows compiling for both Windows & Linux, though there's no OS-X support yet AFAIK.

    So it looks like Microsoft is finally making a serious effort at cross-platform support for C++ (it's just taken VC++ out of the picture...)

    I've tried some preliminary experiments with Visual Studio + Clang and they seemed to work very will together. I haven't yet established if the same .vcxproj files are usable with both Windows & Linux (tho' that'd be a big plus if it's possible!!)
    "A problem well stated is a problem half solved.” - Charles F. Kettering

  8. #38
    2kaud's Avatar
    2kaud is offline Super Moderator Power Poster
    Join Date
    Dec 2012
    Location
    England
    Posts
    7,822

    Re: Input wanted: 3rd Party Products

    Clang, VS, GCC et al support for the various C++ versions differ. For details see https://en.cppreference.com/w/cpp/compiler_support
    All advice is offered in good faith only. All my code is tested (unless stated explicitly otherwise) with the latest version of Microsoft Visual Studio (using the supported features of the latest standard) and is offered as examples only - not as production quality. I cannot offer advice regarding any other c/c++ compiler/IDE or incompatibilities with VS. You are ultimately responsible for the effects of your programs and the integrity of the machines they run on. Anything I post, code snippets, advice, etc is licensed as Public Domain https://creativecommons.org/publicdomain/zero/1.0/ and can be used without reference or acknowledgement. Also note that I only provide advice and guidance via the forums - and not via private messages!

    C++23 Compiler: Microsoft VS2022 (17.6.5)

  9. #39
    John E is offline Elite Member Power Poster
    Join Date
    Apr 2001
    Location
    Manchester, England
    Posts
    4,835

    Re: Input wanted: 3rd Party Products

    Quote Originally Posted by 2kaud View Post
    Clang, VS, GCC et al support for the various C++ versions differ. For details see https://en.cppreference.com/w/cpp/compiler_support
    It looks like Apple's XCode IDE is also offering Clang for MacOS development - so hopefully Microsoft will jump on the bandwagon too and give us a truly cross-platform development environment for C++.
    "A problem well stated is a problem half solved.” - Charles F. Kettering

  10. #40
    Join Date
    Feb 2017
    Posts
    677

    Re: Input wanted: 3rd Party Products

    Quote Originally Posted by John E View Post
    Incidentally... I discovered recently
    Incidentally? I mentioned this in post #15 already.

    I think Microsoft slowly has realized that trying to keep developers loyal by locking them in is an increasingly bad idea. Promoting the use of CMake and Clang with Visual Studio would've been unthinkable just a couple of years ago. Now this is happening and I'm sure more is coming.
    Last edited by wolle; November 15th, 2019 at 03:23 AM.

  11. #41
    John E is offline Elite Member Power Poster
    Join Date
    Apr 2001
    Location
    Manchester, England
    Posts
    4,835

    Re: Input wanted: 3rd Party Products

    Quote Originally Posted by wolle View Post
    Incidentally? I mentioned this in post #15 already.
    Oops - this conversation ended up getting split between various different threads (so it's been hard to keep track of who said what...)

    Quote Originally Posted by wolle View Post
    I think Microsoft slowly has realized that trying to keep developers loyal by locking them in is an increasingly bad idea. Promoting the use of CMake and Clang with Visual Studio would've been unthinkable just a couple of years ago. Now this is happening and I'm sure more is coming.
    Yes I hope so... back in it's heyday, MSVC was easily the world's best C++ compiler but its lack of cross-platform support ended up putting a massive dent in its reputation. Introducing support for Clang (even if it's only on Linux initially) is an important step in the right direction - but to get back to its previous reputation, Visual Studio will need to add further C++ support for building on MacOS (and not sticking with just Linux).

    Let's just hope that Microsoft has managed to figure that out !!
    "A problem well stated is a problem half solved.” - Charles F. Kettering

  12. #42
    Join Date
    Oct 2006
    Location
    Sweden
    Posts
    3,654

    Re: Input wanted: 3rd Party Products

    Eh, VS has supported cross platform development since at least since 2017 (can't remember if also 2015 had it).

    I work more or less 100% with embedded software but I remember that a full installation made it possible to develop for "all" platforms, it even contained emulators for them. Since the app world isn't my world I didn't try it out though but according to other people you have to have a Mac on your network to be able to build for iOS and as I understand it's because of Apple requirements.

    I did try to build (with gcc) and debug on an embedded target though and that worked pretty alright. The eclipse based debuggers I've encountered sucks for embedded C++ but with VS you get the expected behaviour. Since C++ works for embedded targets I don't understand why it shouldn't be supported for other development?

    The only thing I find disappointing is that the project isn't setup the same way as a windows application, instead it's with some json files. I would have preferred it to be just the same as having both win32 & win64 targets in a solution.
    Last edited by S_M_A; December 29th, 2019 at 02:30 PM.
    Debugging is twice as hard as writing the code in the first place.
    Therefore, if you write the code as cleverly as possible, you are, by
    definition, not smart enough to debug it.
    - Brian W. Kernighan

    To enhance your chance's of getting an answer be sure to read
    http://www.codeguru.com/forum/announ...nouncementid=6
    and http://www.codeguru.com/forum/showthread.php?t=366302 before posting

    Refresh your memory on formatting tags here
    http://www.codeguru.com/forum/misc.php?do=bbcode

    Get your free MS compiler here
    https://visualstudio.microsoft.com/vs

  13. #43
    John E is offline Elite Member Power Poster
    Join Date
    Apr 2001
    Location
    Manchester, England
    Posts
    4,835

    Re: Input wanted: 3rd Party Products

    Quote Originally Posted by S_M_A View Post
    The only thing I find disappointing is that the project isn't setup the same way as a windows application, instead it's with some json files. I would have preferred it to be just the same as having both win32 & win64 targets in a solution.
    Gosh, that really is a disappointment... over the Christmas period I've been creating a bootable USB stick so I can boot my PC into Linux. My intention was to install VS on it and see how the Linux version compares to the Windows one that I'm familiar with. And I must admit, I'd also hoped that sln files and vcxproj files would work for both platforms. If the build system is different for each platform, that's a pretty big drawback...
    "A problem well stated is a problem half solved.” - Charles F. Kettering

  14. #44
    Join Date
    Oct 2006
    Location
    Sweden
    Posts
    3,654

    Re: Input wanted: 3rd Party Products

    Oh, maybe I was a bit unclear regarding this.

    There's no Linux version of VS, you just install the cross platform tools. After the installation you will have both a VS compiler and gcc (and also clang if you select that). I haven't tried using a compiler installation outside VS yet but I think that will work just as well. To debug a Linux application you run ssh to another machine. Maybe even WSL can be used but so far I haven't tried that. To debug on an embedded target you use for instance OpenOCD.

    Yep, the json is a disappointment and I hope that MS change their mind in the future.
    Debugging is twice as hard as writing the code in the first place.
    Therefore, if you write the code as cleverly as possible, you are, by
    definition, not smart enough to debug it.
    - Brian W. Kernighan

    To enhance your chance's of getting an answer be sure to read
    http://www.codeguru.com/forum/announ...nouncementid=6
    and http://www.codeguru.com/forum/showthread.php?t=366302 before posting

    Refresh your memory on formatting tags here
    http://www.codeguru.com/forum/misc.php?do=bbcode

    Get your free MS compiler here
    https://visualstudio.microsoft.com/vs

  15. #45
    Join Date
    Aug 2020
    Location
    Florida, United States
    Posts
    1

    Lightbulb Re: Input wanted: 3rd Party Products

    Quote Originally Posted by S_M_A View Post
    Oh, maybe I was a bit unclear regarding this.

    There's no Linux version of VS, you just install the cross platform tools. After the installation you will have both a VS compiler and gcc (and also clang if you select that). I haven't tried using a compiler installation outside VS yet but I think that will work just as well. To debug a Linux application you run ssh to another machine. Maybe even WSL can be used but so far I haven't tried that. To debug on an embedded target you use for instance OpenOCD.

    Yep, the json is a disappointment and I hope that MS change their mind in the future.
    This forum is great supporting visual C++ and C++ programming.
    Last edited by 2kaud; August 11th, 2020 at 02:18 AM. Reason: Unknown link removed

Page 3 of 4 FirstFirst 1234 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  





Click Here to Expand Forum to Full Width

Featured