C++ 17现在功能齐全,因此不太可能经历大的变化.为C++ 17提出了数百个提案.
在C++ 17中,哪些特性被添加到C++中?
当使用支持"C++ 1z"的C++编译器时,当编译器更新到C++ 17时,哪些功能可用?
在C++中通常用某种前缀命名成员变量来表示它们是成员变量而不是局部变量或参数.如果你来自MFC背景,你可能会使用m_foo.我myFoo偶尔也见过.
C#(或者可能只是.NET)似乎建议只使用下划线,如_foo.这是否允许C++标准?
使用xhtml1-transitional.dtddoctype时,使用以下HTML收集信用卡号
<input type="text" id="cardNumber" name="cardNumber" autocomplete='off'/>
Run Code Online (Sandbox Code Playgroud)
将在W3C验证器上标记警告:
没有属性"自动完成".
是否有W3C /标准方法禁用表单中敏感字段的浏览器自动完成?
对于许多问题,答案似乎可以在"标准"中找到.但是,我们在哪里找到它?最好是在线.
谷歌搜索有时会觉得徒劳,尤其是对于C标准,因为他们在编程论坛的大量讨论中被淹没.
要开始这个,因为这些是我现在正在搜索的,那里有很好的在线资源:
我正在设计一个数据库表,并再一次问自己同样愚蠢的问题:firstname字段应该多长时间?
有没有人有最常见字段的合理长度列表,例如名字,姓氏和电子邮件地址?
在过去的几年里,我并没有非常使用过C语言.当我今天读到这个问题时,我遇到了一些我不熟悉的C语法.
显然在C99中,以下语法有效:
void foo(int n) {
int values[n]; //Declare a variable length array
}
Run Code Online (Sandbox Code Playgroud)
这似乎是一个非常有用的功能.有没有关于将它添加到C++标准的讨论,如果是这样,为什么它被省略?
一些潜在的原因:
C++标准规定数组大小必须是常量表达式(8.3.4.1).
是的,当然我意识到在玩具示例中可以使用std::vector<int> values(m);,但这会从堆中分配内存而不是堆栈.如果我想要一个多维数组,如:
void foo(int x, int y, int z) {
int values[x][y][z]; // Declare a variable length array
}
Run Code Online (Sandbox Code Playgroud)
该vector版本变得很笨拙:
void foo(int x, int y, int z) {
vector< vector< vector<int> > > values( /* Really painful expression here. */);
}
Run Code Online (Sandbox Code Playgroud)
切片,行和列也可能遍布整个内存.
看一下comp.std.c++这个问题的讨论很明显,这个问题在争论的两个方面都有一些非常重要的名字引起争议.毫无疑问,a std::vector总是更好的解决方案.
沿着这条线的某个地方,我发现使用iframe是'糟糕的做法'.
这是真的?使用它们的优点/缺点是什么?
是否存在在Java中命名枚举的约定?
我的偏好是枚举是一种类型.所以,例如,你有一个枚举
Fruit{Apple,Orange,Banana,Pear, ... }
NetworkConnectionType{LAN,Data_3g,Data_4g, ... }
Run Code Online (Sandbox Code Playgroud)
我反对命名它:
FruitEnum
NetworkConnectionTypeEnum
Run Code Online (Sandbox Code Playgroud)
我知道很容易找出哪些文件是枚举,但是你也可以:
NetworkConnectionClass
FruitClass
Run Code Online (Sandbox Code Playgroud)
另外,是否有一个好的文档描述了常量,在哪里声明它们等等?
是否可以使用不包含href属性的锚标记,而是使用JavaScript单击事件处理程序?所以我会href完全省略,甚至没有它(href="").
它取决于您使用的平台,还是大多数开发人员建议/遵循的常规约定?
有几种选择:
id="someIdentifier"' - 看起来与javascript代码非常一致. id="some-identifier" - 看起来更像html5类似的属性和html中的其他东西.id="some_identifier" - 看起来与ruby代码非常一致,并且仍然是Javascript中的有效标识符我认为上面的#1和#3最有意义,因为它们使用Javascript更好玩.
对此有正确的答案吗?