这个问题试图收集每年出版的数十本不良C++书籍中的少数珍珠.
与许多其他编程语言不同,这些编程语言经常从互联网上的教程中随处获取,很少有人能够快速学习C++,而无需学习编写精良的C++书籍.这样做太复杂了.事实上,它是如此庞大和复杂,有很多非常糟糕的C++书籍.我们并不是在谈论糟糕的风格,而是体育明显的事实错误和促进糟糕的编程风格.
请编辑接受的答案,以提供高质量的书籍和近似的技能水平 - 最好 在 C++聊天室讨论您的添加后.(如果他们不同意建议,常客可能会毫不留情地撤销你的工作.)添加一篇关于你亲自阅读/受益的每本书的简短描述/描述.随意讨论质量,标题等.符合标准的书籍将被添加到列表中.由C和C++用户协会(ACCU)撰写评论的图书都有指向评论的链接.
*注意:常见问题和其他资源可以在C++标签信息和c ++ - faq中找到.
我一直在解决黑客问题.我遇到了一个虚函数问题,我被要求创建一个名为Student的类.该类必须具有名为cur_id(当前id)的int变量.这是班级;
class Student: public Person{
public:
static int id;
Student(){
cur_id = ++id;
}
};
int Student::id = 0;
Run Code Online (Sandbox Code Playgroud)
我被要求在创建类的每个新对象时增加cur_id +1.所以,我决定增加cur_id构造函数.如您所见,我已经static int在类中声明了一个变量static int id.然后我想在课堂上用零初始化它的值.但是当我尝试它时Student::id = 0;,我无法访问id变量.我需要再次指定其数据类型,就像我再次声明变量一样int Student::id = 0;.是什么原因,为什么我需要两次声明一个静态变量?我知道这是一个新手问题,可能有一个简单的答案,但我找不到其他主题的答案.提前致谢.