小编Ach*_*ave的帖子

用整数乘法重复字符串

有没有一种简单的方法可以在Rust中执行以下操作(来自Python)?

>>> print ("Repeat" * 4) RepeatRepeatRepeatRepeat

我开始学习这门语言了,它似乎String没有覆盖Mul,而且我无法在任何地方找到任何讨论这样做的紧凑方式(除了地图或循环).

rust

29
推荐指数
2
解决办法
3595
查看次数

具有静态链接的成员函数

我试图理解为什么以下是一个错误:

class Foobar {
 public:
  static void do_something();
};

static void Foobar::do_something() {} // Error!

int main() {
  Foobar::do_something();
}
Run Code Online (Sandbox Code Playgroud)

这个错误带有"错误:无法声明成员函数'静态void Foobar :: do_something()'在g ++中具有静态链接",并且"错误:'静态'只能在clang ++中的类定义中指定".

我理解解决这个问题的方法是在第6行的do_something定义中删除"static".但是,我不理解为什么这是一个问题.这是一个世俗的原因,例如"C++语法决定如此",还是更复杂的事情?

c++ static

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

Firefox:drawImage(视频)因NS_ERROR_NOT_AVAILABLE而失败:组件不可用

尝试drawImage使用video其源是网络摄像头源的呼叫似乎在Firefox中失败了 NS_ERROR_NOT_AVAILABLE: Component is not available.

我试图等待每一个事件的视频标签火灾:play,playing,canplay,loadeddata,loadedmetadata,等,并没有什么作品.这似乎是因为这些事件在流正确加载到<video>元素之前触发.

JSFiddle有错误(你可以在控制台中查看错误)

副作用是视频的宽度和高度也不正确.

javascript video firefox canvas getusermedia

9
推荐指数
1
解决办法
5778
查看次数

网络音频:Karplus强字符串合成

编辑:清除代码和播放器(在Github上),以便更容易设置频率

我正在尝试使用Karplus Strong字符串合成算法合成字符串,但我无法正确调整字符串.有谁有想法吗?

如上所述,代码在Github上:https://github.com/achalddave/Audio-API-Frequency-Generator(相关位在strings.js).

Wiki有以下图表:

Karplus强字符串合成图

基本上,我产生噪声,然后输出并同时发送到延迟滤波器.延迟滤波器连接到低通滤波器,然后与输出混合.根据维基百科,延迟应该是N个样本,其中N是采样频率除以基频(N = f_s/f_0).

摘自我的代码:

产生噪音(bufferSize是2048,但这不应该太重要)

var buffer = context.createBuffer(1, bufferSize, context.sampleRate);
var bufferSource = context.createBufferSource();
bufferSource.buffer = buffer;

var bufferData = buffer.getChannelData(0);
for (var i = 0; i < delaySamples+1; i++) {
    bufferData[i] = 2*(Math.random()-0.5); // random noise from -1 to 1
}
Run Code Online (Sandbox Code Playgroud)

创建延迟节点

var delayNode = context.createDelayNode();
Run Code Online (Sandbox Code Playgroud)

我们需要延迟f_s/f_0样品.但是,延迟节点以秒为单位进行延迟,因此我们需要将其除以每秒的采样数,我们得到(f_s/f_0) / f_s,这就是1/f_0.

var delaySeconds …
Run Code Online (Sandbox Code Playgroud)

javascript audio html5-audio web-audio-api

7
推荐指数
1
解决办法
1829
查看次数

将GetElementPtrInst与包含多个Value的ArrayRef一起使用时的Segfault

我正在尝试用LLVM和C++编写一个玩具编译器.但每当我尝试使用多个索引创建一个GetElementPtrInst时,就会出现一个Segfault.关于这条指令的文档对我没有帮助(API-文档 语言 - 文档)

我的llvm版本是3.1,这是在Arch Linux上.刚刚在另一台Arch机器上测试它并得到了同样的错误.

难道我做错了什么?

这是一个小工作程序来说明我的问题.它可以编译为:

g++ -o segfault_example segfault_example.cpp -Wall -Wextra -pedantic \
    `llvm-config --libs core jit native --cxxflags --ldflags`
Run Code Online (Sandbox Code Playgroud)
#include <llvm/Module.h>
#include <llvm/Constants.h>
#include <llvm/DerivedTypes.h>
#include <llvm/LLVMContext.h>
#include <llvm/Instructions.h>
#include <llvm/Analysis/Verifier.h>
#include <llvm/ADT/ArrayRef.h>
#include <string>
#include <iostream>

static llvm::LLVMContext& global = llvm::getGlobalContext();
static llvm::Type* int32ty = llvm::Type::getInt32Ty(global);

llvm::ConstantInt* getInt32(int n)
{
    return llvm::ConstantInt::get(llvm::Type::getInt32Ty(global), n);
}

int main()
{
    //setup everything for a minimal example
    llvm::Module* mainModule = new llvm::Module("main", global);

    llvm::FunctionType* ftype = llvm::FunctionType::get(int32ty, …
Run Code Online (Sandbox Code Playgroud)

llvm llvm-c++-api

4
推荐指数
1
解决办法
1592
查看次数

jQuery、CORS、JSON(无填充)和身份验证问题

我有两个域。我正在尝试通过另一个域上的页面从一个域访问 JSON 对象。我已经阅读了有关此问题的所有内容,但仍然无法弄清楚。

提供 JSON 服务的域具有以下设置:

Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Methods "GET, OPTIONS"
Header set Access-Control-Allow-Headers "origin, authorization, accept"
Run Code Online (Sandbox Code Playgroud)

从我的其他域,我调用以下内容:

$.ajax({
         type:'get',
         beforeSend: function(xhr) {
             var auth = // authentication; 
             xhr.setRequestHeader("Authorization", "Basic " + auth);
         }
         url:myUrl,
         dataType:'json',
         error: function(xhr, textStatus, errorThrown) { console.log(textStatus, errorThrown); }
      })
Run Code Online (Sandbox Code Playgroud)

我知道“auth”已正确初始化(记录并检查)。然而,这是行不通的。在 Firefox 的控制台中,我得到请求 URL:...

Request Method:
OPTIONS

Status Code:
HTTP/1.1 401 Authorization Required
Run Code Online (Sandbox Code Playgroud)

如果我去掉该beforeSend:...部分,我会看到以下内容

Request Method:
GET

Status Code:
HTTP/1.1 401 Authorization Required
Run Code Online (Sandbox Code Playgroud)

但是,服务 JSON 的域也可以服务 JSONP。我不想使用这个,主要是因为应用程序将在专用浏览器上不断运行,我担心这个问题。更重要的是,我真的很想知道我所做的事情到底出了什么问题。我知道出于实际目的,有多种方法可以克服 …

javascript ajax jquery jsonp cors

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

nodejs删除stdout行

您可以使用该模块删除单个字符process.stdout,但是如何删除整行而不打印单个空格呢?

logging stdout node.js

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