我是C ++的初学程序员,我还在学习基础,但是我对C ++中的标准库和STL有一个简单的问题,我认为这不是来自语言的核心,我的意思是这个库只是使编程和可移植性更容易,这意味着如果我学习并掌握了C ++规则,我可以自己构建,我的意思是通过练习这种通话体验。 示例:cout是标准输出功能,但是如果我想为Windows编程GUI软件,我将永远不会只看它! 我的问题:这是真的吗?如果没有,为什么?
答案 0 :(得分:9)
如果不了解标准库,就不能说是一名C ++程序员。写自己的是一个非常糟糕的主意。我强烈建议您获得Nicolai Josuttis's book的副本,并拥抱它将给您带来的力量。例如,您将学习流不仅适用于在控制台应用程序中执行I / O.
也许你也应该看看Good Idea / Bad Idea Should I Reimplement Most Of C++?,其中讨论了专业人士和专业人士。编写自己的标准库的好处。
答案 1 :(得分:2)
你是正确的,C ++标准库不是“核心语言”的一部分,标准库提供的大部分内容都可以仅使用特性核心语言独立实现。
但是,学习标准库对您有利。为什么浪费时间重写已经存在的功能?如果您选择重写它们,您的版本可能会出错。这只是软件开发的真相之一,无论你有多好,但如果你是这门语言的初学者,那就更是如此。相比之下,那里的实现在现场进行了试验和测试。
答案 2 :(得分:1)
寻找std :: cout对GUI编程无用的样本并不完全正确。即使你不使用cout,也值得知道std :: basic_ostream的简单字符串格式化能力。
答案 3 :(得分:1)
您不会使用STL中的所有内容,但MAN是那些字符串和容器类,有时算法也很有用!