C++ learncpp.com 适合初学者吗?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/2915546/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-28 11:28:52  来源:igfitidea点击:

Is learncpp.com good for beginners?

c++

提问by Dream Lane

In my search for a good, freely available resource that will teach me C++ I stumbled on http://www.learncpp.com/.

在我寻找可以教我 C++ 的免费资源的过程中,我偶然发现了http://www.learncpp.com/

My question is for intermediate to experienced C++ programmers...

我的问题是针对中级到有经验的 C++ 程序员...

Does this site seem to be a good resource for a beginner to learn C++ from?

这个站点似乎是初学者学习 C++ 的好资源?

I've gone through the first few section of the site, and I feel like I am starting to grasp the language, but being a beginner in C++ I really could be learning things all wrong and have no idea.

我已经浏览了网站的前几部分,我觉得我开始掌握这门语言,但作为 C++ 的初学者,我真的可能学错了东西,一无所知。

EDIT:After doing some research on this topic, and reading the answers and comments here, it seems like if I do the tutorial, read Accelerated C++, and then read Effective STL... I'll be on the right track. Of course, I'll be writing programs to solve project Euler programs and such. Do any of you have a better idea for a beginner with intentions to become competent in the language?

编辑:在对这个主题做了一些研究,并阅读了这里的答案和评论之后,似乎如果我做教程,阅读加速 C++,然后阅读有效的 STL...我会走上正确的轨道。当然,我将编写程序来解决项目 Euler 程序等问题。对于打算成为语言能力的初学者,你们中有没有人有更好的主意?

采纳答案by Matthieu M.

The site does not look too bad.

该网站看起来不太糟糕。

However it really is a tutorial, in that it just explains the very basic concepts of C++.

然而,它确实是一个教程,因为它只是解释了 C++ 的基本概念。

Notably, it completely misses an introduction to the STL and the proper use of it. You barely see std::coutand std::string. There's no mention of <algorithm>that I could see of and no mention of the <vector>or <deque>or <map>which are the most commonly used containers in C++.

值得注意的是,它完全没有介绍 STL 及其正确使用。你几乎看不到std::coutstd::string。有没有提到<algorithm>,我可以看到的,并没有提及的<vector><deque><map>其中在C中最常用的容器++。

It may not hurt you to learn with this site, but you'll only have a very basic level when you're done with it.

使用此站点学习可能不会对您造成伤害,但是当您完成它时,您只会有一个非常基本的水平。

回答by CMircea

If you want to learn C++ the right way I strongly recommend you purchase a copy of Accelerated C++. It is the best C++ book for a beginner without a doubt.

如果您想以正确的方式学习 C++,我强烈建议您购买Accelerated C++的副本。毫无疑问,它是初学者最好的 C++ 书籍。

回答by Edward Strange

Although the few pages I looked at seem reasonable, any instruction on C++ that recommends the use of Hungarian Notation completely misses the point and is thus suspect.

虽然我看过的几页看起来很合理,但任何关于 C++ 的建议使用匈牙利表示法的说明都完全没有抓住要点,因此值得怀疑。

回答by Secko

It doesn't hurt to start of learning a language through a tutorial, but keep in mind that a tutorial may not (will not) cover all topics of a language. There are always better things than tutorials, like a book and a compiler.

通过教程开始学习语言并没有什么坏处,但请记住,教程可能不会(不会)涵盖语言的所有主题。总有比教程更好的东西,比如一本书和一个编译器。

I would recommend that you base your study on a good book like The C++ Programming Language (Third Edition and Special Edition)by the creator of C++ Bjarne Stroustrup.

我建议您将学习建立在一本好书上,例如C++ Bjarne Stroustrup 的创建者的The C++ Programming Language(第三版和特别版)

It doesn't necessary have to be this book, it can be any usefulbook that other programmers have used and learned from. Books are also programmers tools.

不一定非得是这本书,它可以是其他程序员使用和学习的任何有用的书。书籍也是程序员的工具。

回答by Bozhidar Batsov

This site doesn't look too bad, but I don't think it's great either. A great free resource to learn C++ is the book "Thinking in C++". It's simply outstanding and I heartily recommend it to you. The other thing I recommend you is to start writing some code in C++ right now! Project Euleris my favourite source for beginners programming tasks(especially if you like math ;-) )

这个网站看起来还不错,但我认为它也不是很好。学习 C++ 的一个很好的免费资源是“ Thinking in C++”一书。它非常出色,我衷心地向您推荐它。我建议您的另一件事是立即开始用 C++ 编写一些代码!Project Euler是我最喜欢的初学者编程任务的来源(特别是如果你喜欢数学 ;-) )

回答by sovanesyan

When I was in the university I was using the http://cplusplus.com/. I was quite satisfied with everything there.

当我在大学时,我使用的是http://cplusplus.com/。我对那里的一切都很满意。

回答by John

Yes.

是的。

The tutorials have a comment section, and the admin seems to be responsive to questions there. This indicates that there is some accountability for the material in the lessons.

教程有一个评论部分,管理员似乎对那里的问题做出了回应。这表明对课程中的材料有一定的责任感。

回答by matsolof

I'm currently reading the C++ tutorial at learncpp.comand think it's great!

我目前正在阅读learncpp.com 上的 C++ 教程,并认为它很棒!

For a C++ beginner, like me, that is. You won't get all the answers, but do you really want that as a C++ beginner? I would say no. At least, I don't.

对于像我这样的 C++ 初学者来说,就是这样。您不会得到所有的答案,但是作为 C++ 初学者,您真的想要它吗?我会说不。至少,我没有。

What you will get are lot's of short answers to questions about basic C++ concepts, that I believe will be helpful when you later learn about other aspects of C++.

你会得到很多关于基本 C++ 概念问题的简短回答,我相信当你以后学习 C++ 的其他方面时会很有帮助。

As I said, I'm a C++ beginner, but I have used PHP for several years. I would't say I'm a PHP expert, but I'm not a beginner either, so I think I more or less know what I'm talking about when it comes to languages resembling PHP, like C++.

正如我所说,我是 C++ 初学者,但我已经使用 PHP 好几年了。我不会说我是 PHP 专家,但我也不是初学者,所以我想我或多或少知道我在谈论类似于 PHP 的语言,如 C++。

回答by kennyzx

I have been using C# for several years... Sometimes I have to work with legacy C++ code (some dated back to VC6, written 10 years ago), but I didn't understand the basic of C++ quite well, for example, how the header files work, and why c++ compiler requires the forward declarations,as well as the extern keyword. So I decided to find an online tutorial to learn some basics of C++, and this is what i found, learnCPP.com!

我已经使用 C# 好几年了......有时我不得不使用遗留的 C++ 代码(有些可以追溯到 VC6,10 年前写的),但我不太了解 C++ 的基础,例如,如何头文件有效,以及为什么 C++ 编译器需要前向声明以及 extern 关键字。所以我决定找一个在线教程来学习 C++ 的一些基础知识,这就是我找到的,learnCPP.com!

The tutorial is very well-written, in plain, comprehensible English, I hardly have to turn to the dictionary:-) (I am not an English speaker). Now I have been learning on this site for a couple of months, and I have to say everything I need to know to START programming in C++ can be found in this tutorial.

教程写得非常好,用简单易懂的英语,我几乎不必翻字典:-)(我不会说英语)。现在我已经在这个网站上学习了几个月,我不得不说在本教程中可以找到开始用 C++ 编程需要知道的一切。

Admittedly this tutorial is not "an encyclopedia for the basic of C++", it does not include a dedicated chapter on unicode, or another chapter on the crt... but this tutorial is not meant to cover these topics, otherwise there will be much much more chapters in this tutorial.

诚然,本教程不是“C++ 基础的百科全书”,它不包括关于 unicode 的专门章节,或关于 crt 的另一章……但本教程并不打算涵盖这些主题,否则会有很多本教程中有更多章节。

Try and enjoy!

尝试并享受!

回答by Nils

Learning by doing was the only thing which helped me to understand it. For example, if you want to learn templates and operator overloading, writing your own vector class which uses templates for the datatype of the elements and the length and operator overloading for all the operations as well as assignment will be an lengthy exercise which requires quite some nerves at first ;) But you will realize that you learnt how C++ actually works.

边做边学是唯一帮助我理解它的东西。例如,如果你想学习模板和运算符重载,编写你自己的向量类,它使用模板作为元素的数据类型以及所有操作的长度和运算符重载以及赋值将是一个冗长的练习,需要相当多的一开始很紧张;) 但是您会意识到您已经了解了 C++ 的实际工作方式。

While I advice to write some small stuff as the example illustrated above, following the tutorial to learn the syntax and a the very basics probably isn't bad for a start.

虽然我建议编写一些小东西,如上面所示的示例,但按照教程学习语法和非常基础的知识对于开始来说可能还不错。