问题标签 [auto]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 使用 webBrowser 和 for() 自动刷新页面
我正在使用 Visual Studio 2010,我尝试访问网页几次。代码:
我可以调试和运行我的项目,但它不起作用(我尝试使用简单的计数器访问我的网页)。有谁知道为什么?
c++ - 在 C++ 中使用 lambda 表达式和 auto 关键字时遇到问题
我正在尝试学习如何在 C++ 中使用 lambda 表达式。
我尝试了这段简单的代码,但出现编译错误:
错误:
我还尝试将 lambda 表达式设为自动变量,但出现了一组不同的错误。
这是代码:
这给了我以下错误:
我假设这些是我的编译器的问题,但我不太确定。我刚刚安装了 MinGW,它似乎使用的是gcc
4.6.2。
c++ - 尾随返回类型语法样式是否应该成为新 C++11 程序的默认值?
C++11 支持一种新的函数语法:
目前这个函数将被声明为:
新风格似乎还没有被广泛采用(比如在 gcc stl 中)
然而,这种新风格应该在新的 C++11 程序中无处不在,还是只在需要时使用?
就个人而言,如果可能的话,我更喜欢旧风格,但是混合风格的代码库看起来很丑。
c++ - 这是“new auto(enum_type)”的 microsoft VC++ 2010 编译器错误吗
环境:Microsoft Visual Studio 2010 SP1 Preminum(10.0.40219.1 SP1Rel),Windows XP SP3
VC10 编译器支持 auto 关键字,但推断的类型相关信息似乎并不总是正确的枚举。
例子:
上面的代码应该没有编译时错误或运行时错误。但令我惊讶的是,它编译正常,没有任何错误或警告,但运行不正确。调试器在退出主函数后告诉:
检测到堆损坏:在 0x00034878 处的 %hs 块 (#55) 之后。CRT 检测到应用程序在堆缓冲区结束后写入内存。
所以我猜编译器可能在“自动”类型推导中有错误。下面的汇编器窗口显示,在第一个“operator new”调用中请求的内存大小为 1 个字节,而第二个“operator new”调用为 4 个字节。这表明编译器在推导类型的大小上犯了一个大错误。
你认为这是一个编译器错误吗?微软是否有任何错误修复?
c++ - C++11 - 将非静态数据成员声明为“自动”
如果在声明中初始化非静态数据成员,C++11 是否允许将它们声明为“自动”?例如:
GCC 4.7 拒绝上述代码,而接受int x = 5;
.
假设这不是编译器错误,而是标准确实不允许,为什么不呢?它与声明局部变量一样有用auto
。
c++ - decltype 和 auto 等价
由于 auto 和 decltype 都用于推断类型。我以为他们会是一样的。
然而,这个问题的答案却表明并非如此。
我仍然认为它们不能完全不同。我可以想到一个简单的例子,i
在以下两种情况下,类型都是相同的。
那么 auto 和 decltype 表现相同的可能情况是什么。
c++ - 为什么一元减法执行积分提升?
T 是一个模板参数,short
在这种情况下是 a。一元减号显然执行积分提升。
- 为什么一元减法执行积分提升?
- 如果
auto
更改为T
不生成警告,但应该将 int 分配给 short。为什么没有警告(可能是 VS 很花哨)?
c++ - 带字符串文字的自动
x
当字符串文字实际上是数组时,为什么推断为指针?
窄字符串文字的类型为“ n
const char
数组” [2.14.5 字符串文字 [lex.string] §8]
c++ - for 循环初始化中的 auto 和 decltype
我一直很高兴地迭代
让所有类型自动正确。使用 g++ 4.7.1 没有问题,但使用 4.7.0 版本时出现错误。由于 4.7.1 相当新,我想知道哪个版本实现了这个错误,哪个版本是标准。此外,4.7.0(以及 std=c++0x 的 4.6.3)仅在与模板一起使用时才会报错,并且在不同的用法中会产生不同的错误。请参阅以下代码:
和 g++ 版本 4.7.0 的输出
c++ - 迭代向量时自动与具体类型?
我正在阅读的这本书在迭代一个vector
假设 v 被声明为vector<int> v
,换句话说,我们知道这个集合中元素的类型是int
。
是否auto
以任何方式更好或更喜欢使用?
为什么?