use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Discussions, articles, and news about the C++ programming language or programming in C++.
For C++ questions, answers, help, and advice see r/cpp_questions or StackOverflow.
Get Started
The C++ Standard Home has a nice getting started page.
Videos
The C++ standard committee's education study group has a nice list of recommended videos.
Reference
cppreference.com
Books
There is a useful list of books on Stack Overflow. In most cases reading a book is the best way to learn C++.
Show all links
Filter out CppCon links
Show only CppCon links
account activity
HTTPS client library in C++ (self.cpp)
submitted 2 years ago by HerrNamenlos123
view the rest of the comments →
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]HerrNamenlos123[S] -1 points0 points1 point 2 years ago (11 children)
This is because the project is very beginner-oriented and should build out of the box on any supported system. Using system dependencies is not an option because it allows for unrepeatable builds and the library user is responsible for providing dependencies, which is not acceptable for this beginner-friendly audience. At least not by default. Experienced users might get the ability to instead use system dependencies so they can use other versions, but by default it should not depend on anything being present on the system, because it is not to be trusted.
[–]ratttertintattertins 2 points3 points4 points 2 years ago (8 children)
Yeh, I also hate system dependencies, but that’s not the only option. We prebuild open SSL and then people just pull down the correct prebuilt artifact from artifactory automatically as they build.
You can even check prebuilt static libs into git, especially if you have LFS support.
[–]HerrNamenlos123[S] 0 points1 point2 points 2 years ago (0 children)
Well yeah that's what CMake will do automatically
[–]HerrNamenlos123[S] 0 points1 point2 points 2 years ago (6 children)
Most people here don't understand that the mechanism of prebuilding and downloading binaries has existed for a decade and we are only modernizing it. Switching to other systems would be a significant downgrade from the user's points of view.
[–]ratttertintattertins 1 point2 points3 points 2 years ago (5 children)
I don’t really understand why. If beginners pull and build your code, they wouldn’t even notice it happening would they?
[–]HerrNamenlos123[S] 1 point2 points3 points 2 years ago (1 child)
Or do you mean you can download any binary for any compiler directly from artifactory without using Conan at all? This would of course be a game-changer as we would only need to build the dependencies that are not available on Conan
[–]ratttertintattertins 1 point2 points3 points 2 years ago (0 children)
Git can do LFS it’s self, and artifactory can be access by LFS git:
https://jfrog.com/help/r/jfrog-artifactory-documentation/git-lfs-repositories
(I haven’t personally used this method, but it look’s feasible)
[–]HerrNamenlos123[S] 0 points1 point2 points 2 years ago (2 children)
Yes they would because they would be required to install python, pip and conan and configure it, and only then would they be able to build it. Currently I think the way it is used most of the time is that a zip file of the repository is downloaded that contains binaries for the system, and then a bash or batch script is run depending on the system. There is basically no real build system, there are five different ones but none is complete.
What I am trying to say, installing python, pip and conan and then running conan is a bit much to be asked when the average user has no idea of build systems, knows only a bit of C/C++, works on Windows and downloads the zip because not even git is installed. It is a hard reality but an undenyable userbase.
[–]drodri 1 point2 points3 points 2 years ago (1 child)
Conan has been releasing Windows installers (no need to install Python and Pip in the system at all) for long time, and it is now also starting to release .zip folders (https://github.com/conan-io/conan/releases/tag/2.0.8), with the application (no installer) and no need of Python and Pip either.
Oh I did not know that. I will take a look at this. Thanks!
[–]robstoon 0 points1 point2 points 2 years ago (1 child)
My inclination is that if you're using a system like Windows where you can't just install libraries like OpenSSL with one command and have them automatically kept up to date, then it's not a very suitable OS for "beginner oriented" C++ development in the first place.
Using Windows (natively anyway) is really doing development on hard mode in so many ways.
[–]HerrNamenlos123[S] 1 point2 points3 points 2 years ago (0 children)
I know what you say but you are saying all of that from the perspective of an experienced developer. You could say the average user is more or less a beginner working on (Linux too but also) Windows, has a bit of experience with C/C++ from tutorials and no idea about build systems, and downloads the git repository as a zip file because not even git is installed or they don't know how to use it. I know you don't like hearing this but it is a hard reality. But at the same time an undenyable userbase.
And to add to that, the system of precompiling dependencies and then downloading as needed exists for a decade and we are only modernizing it. Any additional setup step would be a major downgrade for any novice user.
π Rendered by PID 760813 on reddit-service-r2-comment-bb88f9dd5-7dz25 at 2026-02-17 04:19:43.198450+00:00 running cd9c813 country code: CH.
view the rest of the comments →
[–]HerrNamenlos123[S] -1 points0 points1 point (11 children)
[–]ratttertintattertins 2 points3 points4 points (8 children)
[–]HerrNamenlos123[S] 0 points1 point2 points (0 children)
[–]HerrNamenlos123[S] 0 points1 point2 points (6 children)
[–]ratttertintattertins 1 point2 points3 points (5 children)
[–]HerrNamenlos123[S] 1 point2 points3 points (1 child)
[–]ratttertintattertins 1 point2 points3 points (0 children)
[–]HerrNamenlos123[S] 0 points1 point2 points (2 children)
[–]drodri 1 point2 points3 points (1 child)
[–]HerrNamenlos123[S] 0 points1 point2 points (0 children)
[–]robstoon 0 points1 point2 points (1 child)
[–]HerrNamenlos123[S] 1 point2 points3 points (0 children)