小编Tre*_*edJ的帖子

Haskell中的zip函数

zip函数的实现,它将两个列表作为参数并返回一对新的对列表.到目前为止我得到了这个

myZip [] [] = []
myZip (x:xs) (y:ys) = [(x,y)] ++ myZip xs ys
Run Code Online (Sandbox Code Playgroud)

任何帮助?

recursion implementation haskell

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

IE中的Mediaelement.js故障,没有闪回工作

我在我的网站上使用了mediaelement.js,我用的例子是带有H.264编解码器的.mp4文件,适用于所有浏览器,但是当我发布网站时,在我的本地主机上不适用于任何版本的Internet Explorer没有任何问题(闪回后备效果很好),但在我的服务器上不起作用.

我使用的代码是:

<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>VIDEO HTML5</title>

    <script type="text/javascript" src="player_files/jquery.js"></script>
    <script type="text/javascript" src="player_files/mediaelement-and-player.min.js"></script>
    <link href="player_files/mediaelementplayer.min.css" rel="Stylesheet" />
</head>

<body>


<video id="video1" src="http://www.teletica.com/html5/videos/precious.mp4" width="640" height="360" poster="http://www.teletica.com/html5/videos/precious.jpg" controls="controls" preload="none"></video>

<video width="640" height="360" id="video2" poster="videos/precious.jpg" controls="controls" preload="none">
    <source type="video/mp4" src="http://teletica.com/html5/videos/precious.mp4" />
    <source type="video/webm" src="http://teletica.com/html5/videos/precious.webm" />

    <object width="640" height="360" type="application/x-shockwave-flash" data="player_files/flashmediaelement.swf">        
        <param name="movie" value="player_files/flashmediaelement.swf" /> 
        <param name="flashvars" value="controls=true&file=http://teletica.com/html5/videos/precious.mp4" />         

        <img src="player_files/precious.jpg" width="640" height="360" alt="Here we are" title="No video playback capabilities" />
    </object>   
</video>

<script type="text/javascript">
    $('video, audio').mediaelementplayer(); …
Run Code Online (Sandbox Code Playgroud)

flash mp4 fallback mediaelement.js video-player

6
推荐指数
1
解决办法
7828
查看次数

c ++ 11函数调用中的单元素向量初始化

请考虑以下示例代码:

例:

void print(int n) {
    cout << "element print\n";
}

void print(vector<int> vec) {
    cout << "vector print\n";
}

int main() {
   /* call 1 */ print(2);
   /* call 2 */ print({2});
   std::vector<int> v = {2};
   /* call 3 */ print(v);
   /* call 4 */ print( std::vector<int>{2} );
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

它生成以下输出:

element print
element print
vector print
vector print
Run Code Online (Sandbox Code Playgroud)

为什么print函数调用(上例中的调用2)与接受单个值的函数匹配?我在这个调用中创建了一个向量(包含单个元素),所以它与print使用向量作为输入的调用不匹配吗?

在另一个问题中进行了部分讨论,其中所提供的解决方案适用于具有多于1个元素的向量.

c++ stl vector overload-resolution c++11

6
推荐指数
2
解决办法
2270
查看次数

如何根据调用者为警告分配堆栈级别?

我有一个 Python 类,它在__init__(). 它还提供了一个用于打开和读取文件的工厂类方法:

from warnings import warn

class MyWarning(Warning):
    """Warning issued when an invalid name is found."""
    pass

class MyClass:
    def __init__(self, names):
        # Simplified; actual code is longer
        if is_invalid(names):
            names = fix_names(names)
            warn(f'{names!r} contains invalid element(s)',
                MyWarning, stacklevel=2)
        self._names = names

    @classmethod
    def from_file(cls, filename):
        with open(filename) as file:
            names = extract_names(file)
        return cls(names)
Run Code Online (Sandbox Code Playgroud)

stacklevel=2使警告指的是调用MyClass()而不是warn()语句本身。这在用户代码直接实例化 MyClass 时有效。但是,当MyClass.from_file()发出警告时,MyWarning指的是return cls(names),而不是调用 的用户代码from_file()

如何确保工厂方法也发出指向调用者的警告?我考虑过的一些选择:

  1. 向 中添加“隐藏” …

python constructor warnings python-3.x

6
推荐指数
1
解决办法
255
查看次数

在C ++中对std :: get_money和s​​td :: put_money的困惑

我对头文件中std::get_money定义的C ++函数感到困惑<iomanip>get_money按编程概念的用途是什么?

我使用以下代码std::get_money

#include <iostream>     // std::cin, std::cout
#include <iomanip>      // std::get_money

int main ()
{
  long double price;
  std::cout << "Please, enter the price: ";
  std::cin >> std::get_money(price);

  if (std::cin.fail()) std::cout << "Error reading price\n";
  else std::cout << "The price entered is: " << price << '\n';

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我输入100.25时,它返回100。输出和货币格式之间是什么关系?我阅读了参考资料,但无法理解这种关系。同样的困惑存在与std::put_moneystd::get_time,和std::put_time

实际使用的例子有哪些?

c++ iomanip

6
推荐指数
1
解决办法
238
查看次数

修改MySQL触发器

我有一个要修改的MySQL触发器。唯一的变化是在触发器主体中。

是否足以更新ACTION_STATEMENTColumn INFORMATION_SCHEMA.TRIGGERS?这是更新触发器的正确​​方法吗?具体来说,我正在寻找这样做可能引起的任何问题。

mysql sql triggers database-trigger

5
推荐指数
1
解决办法
4144
查看次数

android媒体播放器流错误100

我开发了一款应用程序,它充分利用了原生Android的MediaPlayer.我的班级使用Media Player的源代码如下.问题是只有在播放几毫秒之后的某些设备上(我只听到声音,屏幕仍然是黑色的)我不断收到错误(100,0)根据文件说 http://developer.android.com/reference /android/media/MediaPlayer.html#MEDIA_ERROR_SERVER_DIED

在论坛上我发现我每次拿到它都需要重置播放器......但是我在短时间内得到它然后它永远消失了.由于播放无用,我无法每秒重置播放器.我不明白为什么有些设备会出现这个问题而其他设备却没有.我知道的那个有Android操作系统> 4.0.

当然首先调用init()然后再调用showVideo().调用带有100个代码的最后一个onError.什么是一个潜在的解决方案,使流运行,并在一会儿后不要破坏...

提前致谢

public class NativePlayer extends Player implements OnBufferingUpdateListener,
        OnCompletionListener, OnErrorListener, OnInfoListener {

    private VideoView videoview;
    private PlayerListener listener;
    private MainActivity context;

    private final Logger logger = LoggerFactory.getLogger(NativePlayer.class);

    @Override
    public void init(MainActivity activity) {
        this.videoview = (VideoView) activity.findViewById(R.id.video);
        context = activity;
    }

    @Override
    public void showVideo(final String url, final PlayerListener _listener) {
        listener = _listener;
        videoview.setVisibility(View.VISIBLE);
        try {
            Uri video = Uri.parse(url);
            videoview.setVideoURI(video);
        } catch (Exception e) {
            logger.error("Error playing video", e);
            listener.onVideoError();
            return; …
Run Code Online (Sandbox Code Playgroud)

media android stream android-mediaplayer

5
推荐指数
1
解决办法
8327
查看次数

使用 python 检测鼠标是等待还是忙碌

我正在用 Python 2.7 创建一个脚本。该脚本在应用程序内自动执行鼠标单击操作。

有时,单击鼠标后,鼠标光标将处于“等待”状态,我想等到鼠标光标恢复正常后再进入代码中的下一步。

python 中是否可以检测鼠标是否正在等待?

python mouse-cursor

5
推荐指数
0
解决办法
554
查看次数

从整数列表中找到最小缺失整数的最快方法

我有一个100个随机整数的列表.每个随机整数的值都是0到99.允许重复,因此列表可能是这样的

56, 1, 1, 1, 1, 0, 2, 6, 99...
Run Code Online (Sandbox Code Playgroud)

我需要找到列表中包含的最小整数(> = 0).

我最初的解决方案是:

vector<int> integerList(100); //list of random integers
...
vector<bool> listedIntegers(101, false);
for (int theInt : integerList)
{
    listedIntegers[theInt] = true;
}
int smallestInt;
for (int j = 0; j < 101; j++)
{
    if (!listedIntegers[j])
    {
        smallestInt = j;
        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

但这需要一个二级数​​组用于簿记和第二个(可能是完整的)列表迭代.我需要执行这个任务数百万次(实际的应用程序是一个贪婪的图形着色算法,我需要找到一个顶点邻接列表中最小的未使用的颜色值),所以我想知道是否有一个聪明的方法来获取没有那么多开销的相同结果?

c++ arrays algorithm vector time-complexity

5
推荐指数
1
解决办法
238
查看次数

Qite中未级联的SQLite“在删除CASCADE上”

我在Qt中有一个数据库。它有四个表:主组,子组,零件和位置。这是我的数据库:

CREATE TABLE `maingroup` (
    `groupName`TEXT NOT NULL UNIQUE,
     PRIMARY KEY(`groupName`)
);
CREATE TABLE `subgroup` (
    `sub`   TEXT NOT NULL UNIQUE,
    `main`  TEXT NOT NULL,
    PRIMARY KEY(`sub`),
    FOREIGN KEY(`main`) REFERENCES `maingroup`(`groupName`) ON DELETE CASCADE
);
CREATE TABLE `parts` (
    `ID`    INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,
    `Part_Number`   TEXT,
    `Type`  TEXT NOT NULL,
    `Value` TEXT,
    `Voltage`   TEXT,
    `Quantity`  TEXT,
    `Position`  TEXT,
    `Picture`   TEXT,
    FOREIGN KEY(`Position`) REFERENCES `Position`(`Poistion`) ON DELETE CASCADE,
    FOREIGN KEY(`Type`) REFERENCES `subgroup`(`sub`) ON DELETE CASCADE
);
Run Code Online (Sandbox Code Playgroud)

表部分中的类型是外键,指的是表子组中的列子。表子组中的main是外键,指的是表主组中的列组名。我的问题是,当我delete …

c++ sqlite qt

5
推荐指数
1
解决办法
174
查看次数