小编jam*_*lin的帖子

Python:斜杠在help()输出中意味着什么?

在关闭括号之前/,Python 3.4的help输出意味着什么range

>>> help(range)
Help on class range in module builtins:

class range(object)
 |  range(stop) -> range object
 |  range(start, stop[, step]) -> range object
 |  
 |  Return a virtual sequence of numbers from start to stop by step.
 |  
 |  Methods defined here:
 |  
 |  __contains__(self, key, /)
 |      Return key in self.
 |  
 |  __eq__(self, value, /)
 |      Return self==value.

                                        ...
Run Code Online (Sandbox Code Playgroud)

python introspection python-3.x

119
推荐指数
3
解决办法
2万
查看次数

flutter 方法“File.create”的命名参数比重写方法“File.create”的命名参数少

当我尝试运行 Flutter 项目时,出现如下错误:

../../../.pub-cache/hosted/pub.dev/file-6.1.2/lib/src/interface/file.dart:15:16:错误:方法“File.create”有命名参数比重写方法“File.create”的命名参数少。未来创建({布尔递归= false});

跑步flutter cleanflutter upgrade没有帮助。怎么了?我该如何解决?

debugging dart flutter

114
推荐指数
6
解决办法
6万
查看次数

无法在 Flutter 上找到捆绑的 Java 版本

我有 Android Studio 3.0 版。当我使用命令“flutter doctor”时,它显示“无法找到捆绑的 Java 版本”。我当前的 java 版本是 (build 1.8.0_131-b11)。

flutter

68
推荐指数
18
解决办法
4万
查看次数

编译器优化可能会导致整数溢出。可以吗?

我有一个int x。为简单起见,假设ints 占据范围 -2^31 到 2^31-1。我想计算2*x-1. 我允许x为任何值 0 <= x<= 2^30。如果我计算 2*(2^30),我会得到 2^31,这是整数溢出。

一种解决方案是计算2*(x-1)+1. 比我想要的多了一项减法,但这不应该溢出。但是,编译器会将其优化为2*x-1. 这是源代码的问题吗?这是可执行文件的问题吗?

是 Godbolt 的输出2*x-1

func(int):                               # @func(int)
        lea     eax, [rdi + rdi]
        dec     eax
        ret
Run Code Online (Sandbox Code Playgroud)

是 Godbolt 的输出2*(x-1)+1

func(int):                               # @func(int)
        lea     eax, [rdi + rdi]
        dec     eax
        ret
Run Code Online (Sandbox Code Playgroud)

c++ integer-overflow compiler-optimization undefined-behavior integer-arithmetic

64
推荐指数
4
解决办法
7744
查看次数

为什么C++ 0x中没有编译器生成的swap()方法?

C++编译器自动生成复制构造函数和复制赋值运算符.为什么不swap呢?

目前,实现复制赋值运算符的首选方法是复制和交换习惯用法:

T& operator=(const T& other)
{
    T copy(other);
    swap(copy);
    return *this;
}
Run Code Online (Sandbox Code Playgroud)

(忽略使用pass-by-value的copy-elision-friendly表单).

这个习惯用法具有在异常情况下处于事务处理的优点(假设swap实现不抛出).相反,默认的编译器生成的复制赋值运算符递归地对所有基类和数据成员进行复制赋值,并且没有相同的异常安全保证.

同时,swap手动实现方法既繁琐又容易出错:

  1. 为了确保swap不抛出,必须为类和基类中的所有非POD成员,非POD成员等实现它.
  2. 如果维护者将新数据成员添加到类中,则维护者必须记住修改该类的swap方法.如果不这样做可能会引入微妙的错误.此外,由于swap是一种普通的方法,如果swap实现不完整,编译器(至少我不知道)不会发出警告.

如果编译器swap自动生成方法会不会更好?然后隐式复制赋值实现可以利用它.

显而易见的答案可能是:在开发C++时,复制和交换习惯用法不存在,现在这样做可能会破坏现有代码.

尽管如此,也许人们可以选择swap使用C++ 0x用于控制其他隐式函数的相同语法来生成编译器:

void swap() = default;
Run Code Online (Sandbox Code Playgroud)

然后可能有规则:

  1. 如果存在编译器生成的swap方法,则可以使用copy-and-swap实现隐式复制赋值运算符.
  2. 如果没有编译器生成的swap方法,则将像以前一样实现隐式复制赋值运算符(在所有基类和所有成员上调用copy-assigment).

有没有人知道这些(疯狂?)的事情是否已经向C++标准委员会提出过建议,如果有的话,委员会成员有什么意见?

c++ language-design c++11

45
推荐指数
2
解决办法
3220
查看次数

如果列表[j]在list [i]之前,list [i:j]是否保证是空列表?

Python教程解释了索引为负时的切片行为,但是当结束索引在起始索引之前时,我找不到描述行为的文档.(我也看过Explain Python的切片符号,也许我读的不够仔细,但那里的答案似乎没有解决这一点.)

我观察到的行为是返回一个空列表,这对我来说似乎是合理的.但是,对于我来说i,j在相反的顺序之间返回项目列表或仅仅提出异常对我来说似乎也是合理的.

list[i:j]保证是一个空列表,如果list[j]先于list[i]

python list slice

37
推荐指数
1
解决办法
1516
查看次数

Dart - 如何 _InternalLinkedHashMap&lt;String, dynamic&gt; 转换为 Map&lt;String, dynamic&gt;?

我在我的颤振应用程序中使用包 dio。从我的 api 问题中得到回应。 response.data获取类型 _InternalLinkedHashMap<String, dynamic>。我需要将此值转换为Map<String, dynamic>. 我尝试了很多选择,但这不起作用。

我无法更改服务器响应。有什么建议吗?

json dart flutter

37
推荐指数
4
解决办法
2万
查看次数

在C++中,pass-by-pointer更适合传递引用?

我可以想象一种情况,其中输入参数可以是NULL,因此传递指针是首选但不是传递参考?

任何人都可以添加更多案例吗?

c++

34
推荐指数
3
解决办法
3529
查看次数

如何使用 GitHub 存储库中的 used by 按钮

您好,我在我的 github 存储库中发布了一个库,我想使用存储库中的used by按钮

我检查了存储库设置,但没有找到启用它的选项 如何在我的存储库中启用此按钮? 在此处输入图片说明

github

15
推荐指数
1
解决办法
2363
查看次数

使用 flutter_svg 包时如何修复此 nullOk 错误?

我连接了包,将它添加到 main.dart,我尝试编译应用程序,但出现此错误。帮助!我该怎么办?

错误

Launching lib\main.dart on XT1562 in debug mode...
Running Gradle task 'assembleDebug'...
/D:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_svg-0.18.1/lib/src/picture_provider.dart:50:59: Error: No named parameter with the name 'nullOk'.
        context != null ? Localizations.localeOf(context, nullOk: true) : null,
                                                          ^^^^^^
/D:/flutter/packages/flutter/lib/src/widgets/localizations.dart:413:17: Context: Found this candidate, but the arguments don't match.
  static Locale localeOf(BuildContext context) {
                ^^^^^^^^


FAILURE: Build failed with an exception.

* Where:
Script 'D:\flutter\packages\flutter_tools\gradle\flutter.gradle' line: 991

* What went wrong:
Execution failed for task ':app:compileFlutterBuildDebug'.
> Process 'command 'D:\flutter\bin\flutter.bat'' finished with non-zero exit value 1 …
Run Code Online (Sandbox Code Playgroud)

dart flutter

14
推荐指数
2
解决办法
1万
查看次数