对于这个问题,这可能不是一个非常合适的论坛,但是让我试一试,冒着被搬走的风险.
C++标准库有几个参考,包括非常有价值的ISO标准,MSDN,IBM,cppreference和cplusplus.就个人而言,在编写C++时,我需要一个具有快速随机访问,短加载时间和使用示例的引用,并且我一直在发现cplusplus.com非常有用.但是,我一直在SO上听到关于该网站的负面看法,所以我想具体说明:
cplusplus.com提供的错误,误解或错误建议有哪些?使用它来做出编码决策有哪些风险?
让我补充一点:我希望能够通过标准的准确报价在这里回答问题,因此我想发布可立即使用的链接,而cplusplus.com将是我选择的网站,如果不是这个问题.
如果我写:
#include <map>
int main()
{
std::map<int, double> q;
q[3] += 4;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我能确定q [3]是4,而不是q [3]是4 +(来自内存的一些随机未初始化的垃圾)?
#include <iostream>
#include <map>
using namespace std;
int main()
{
map<int, int> m;
for (int i = 0; i < 5; i++)
m[i]++;
for (int i = 0; i < 5; i++)
cout<<m[i];
}
Run Code Online (Sandbox Code Playgroud)
输出:
11111
现在,如何初始化 m[i] 的值?它不应该转换为 m[i] 的值加 1 吗?