15 私有,公共和受保护的继承之间的区别 是什么区别public,private以及protected在继承C ++? 我在SO上发现的所有问题都与特定情况有关。 1012 c++ inheritance encapsulation access-specifier c++-faq
1 C ++ 17的新功能是什么? 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 C ++ 17现在已完成功能,因此不太可能经历大的更改。针对C ++ 17提出了数百个建议。 其中哪些功能是在C ++ 17中添加到C ++的? 使用支持“ C ++ 1z”的C ++编译器时,当编译器更新到C ++ 17时,哪些功能将可用? 1007 c++ standards c++-faq c++17
5 未定义的行为和顺序点 什么是“序列点”? 未定义行为与序列点之间有什么关系? 我经常使用诸如的有趣且令人费解的表情a[++i] = i;来使自己感觉更好。为什么我应该停止使用它们? 如果您已阅读本文,请确保访问后续问题未定义行为和重载序列点。 (注意:这本来是Stack Overflow的C ++ FAQ的一个条目。如果您想批评以这种形式提供FAQ的想法,那么开始所有这些工作的meta上的发布将是这样做的地方。该问题在C ++聊天室中进行监控,该问题最初是从FAQ想法开始的,所以提出这个想法的人很可能会读懂您的答案。) 986 c++ undefined-behavior c++-faq sequence-points
5 在C ++标识符中使用下划线的规则是什么? 在C ++中,通常使用某种前缀来命名成员变量,以表示它们是成员变量,而不是局部变量或参数。如果您是来自MFC的背景,则可能会使用m_foo。我也myFoo偶尔见过。 C#(或可能只是.NET)似乎建议仅使用下划线,如中所示_foo。C ++标准允许吗? 930 c++ naming-conventions standards c++-faq
18 为什么C ++程序员应尽量减少对“新”的使用? 我在使用std :: list <std :: string>时偶然发现了std :: string的内存溢出问题内存泄漏,其中一条评论说: 停止使用new太多。我看不到您在任何地方使用新产品的任何原因。您可以在C ++中按值创建对象,这是使用该语言的巨大优势之一。 您不必在堆上分配所有内容。 不要像Java程序员那样思考。 我不确定他的意思。 为什么要在C ++中尽可能频繁地通过值创建对象,它在内部有什么不同? 我是否误解了答案? 873 c++ memory-management heap new-operator c++-faq
4 T &&(双“&”号)在C ++ 11中是什么意思? 我一直在研究C ++ 11的一些新功能,而我注意到的一个是在声明变量(如)时使用了双“&”号T&& var。 首先,这只野兽叫什么?我希望Google允许我们搜索这样的标点符号。 这到底是什么意思? 乍一看,它似乎是一个双重引用(如C样式的双指针T** var),但是我很难考虑到这种情况的用例。 799 c++ c++11 rvalue-reference c++-faq perfect-forwarding
9 为什么要在宏中使用看似毫无意义的do-while和if-else语句? 在许多C / C ++宏中,我看到了看起来似乎毫无意义的do while循环中包裹的宏代码。这是例子。 #define FOO(X) do { f(X); g(X); } while (0) #define FOO(X) if (1) { f(X); g(X); } else 我看不到在do while做什么。为什么不没有它就写这个呢? #define FOO(X) f(X); g(X) 787 c++ c c-preprocessor c++-faq
12 std :: wstring VS std :: string 我无法理解之间的差异std::string和std::wstring。我知道wstring支持宽字符,例如Unicode字符。我有以下问题: 我什么时候应该std::wstring用完std::string? 可以std::string容纳整个ASCII字符集,包括特殊字符吗? 是std::wstring由所有流行的C ++编译器的支持? 什么是“ 宽字符 ”? 740 c++ string unicode c++-faq wstring
10 类的函数声明中“ const”最后的含义? const这样的声明中的含义是什么?该const混淆了我。 class foobar { public: operator int () const; const char* foo() const; }; 727 c++ const declaration c++-faq
24 C ++标准说明int,long类型的大小是什么? 我正在寻找有关基本C ++类型大小的详细信息。我知道这取决于体系结构(16位,32位,64位)和编译器。 但是C ++有什么标准吗? 我在32位体系结构上使用Visual Studio 2008。这是我得到的: char : 1 byte short : 2 bytes int : 4 bytes long : 4 bytes float : 4 bytes double: 8 bytes 我试图找到,但没有成功,可靠的信息,表述的大小char,short,int,long,double,float(和其他类型的我没想到的),在不同的体系结构和编译器。 696 c++ c++-faq
7 什么是std :: move(),何时应使用它? 它是什么? 它有什么作用? 什么时候应该使用? 良好的链接表示赞赏。 655 c++ c++11 move-semantics c++-faq stdmove