小编vin*_*nes的帖子

缺少Rails 2.3.4宝石.即使它已安装!

跑雪豹.尝试卸载,然后重新安装.每当我运行rake任务时仍会出现相同的错误.

mbpro:redmine shereef $ ruby​​ -v
ruby 1.8.7(2009-06-12 patchlevel 174)[i686-darwin10.0.0]

mbpro:redmine shereef $ rails -v
Rails 2.3.4

mbpro:redmine shereef $ rails
/usr/local/bin/rails

mbpro:redmine shereef $ gem -v
1.3.5

mbpro:redmine shereef $ gem
/usr/local/bin/gem

mbpro:redmine shereef $ rake -v
(在/ Users/shereef/Documents/Code/BetterMeans/redmine中)
缺少Rails 2.3.4 gem.请gem install -v=2.3.4 rails更新您已安装的Rails版本的config/environment.rb中的RAILS_GEM_VERSION设置,或注释掉RAILS_GEM_VERSION以使用安装的最新版本.

mbpro:redmine shereef $ rake
/usr/bin/rake

mbpro:redmine shereef $ $ PATH
-bash:/ usr/local/bin:/ usr/local/sbin:/ usr/local/mysql/bin:/ opt/local/bin:/ opt/local/sbin:/ opt/local/bin目录中:/ opt/local/sbin中:在/ usr/bin中:/ bin中:/ usr/sbin目录:/ sbin目录:在/ usr/local/bin目录:在/ usr /本地/ git的/ bin中:在/ usr/X11/bin中:没有相应的文件和目录

mbpro:redmine shereef $

rake install rubygems ruby-on-rails

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

编程语言中的foreach语句重载

您好我想定义自己的类集合,并在foreach语句中使其可迭代,如下所示:

public class Collection(Type)
{
    ...
    private T head;
    private Collection!(T) queue;
}

Collection!(int) temp;
foreach (int t; temp) { ... }
Run Code Online (Sandbox Code Playgroud)

我应该定义什么方法,以及如何定义?

foreach d

7
推荐指数
2
解决办法
883
查看次数

WMI:插入时获取USB设备描述

如何在插入USB设备时获取设备ID和其他说明?我找到了一个如何获得USB设备插入/删除通知的示例.但是如何获取设备desrtiption信息?

这是我的代码片段:

WqlEventQuery q;
ManagementScope scope = new ManagementScope("root\\CIMV2");
scope.Options.EnablePrivileges = true;

try
{
    q = new WqlEventQuery();
    q.EventClassName = "__InstanceDeletionEvent";
    q.WithinInterval = new TimeSpan(0, 0, 3);
    q.Condition = @"TargetInstance ISA 'Win32_USBControllerdevice'";
    w = new ManagementEventWatcher(scope, q);
    w.EventArrived += new EventArrivedEventHandler(USBRemoved);
    w.Start();
}
... catch()....
Run Code Online (Sandbox Code Playgroud)

更新:实际上,它是一个带USB连接的串行COM设备.所以没有driveName属性.如何获取USB描述,我可以在设备管理器中看到?WMI是否提供有关USB插入的通知的此信息?

.net c# usb wmi insertion

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

D功能模板和类型推断

请考虑以下代码:

module ftwr;

import std.regex;
import std.stdio;
import std.conv;
import std.traits;

S consume (S) (ref S data, Regex ! ( Unqual!(typeof(S.init[0])) ) rg)
{
    writeln (typeid(Unqual!(typeof(S.init[0]))));

    auto m = match(data, rg);
    return m.hit;
}

void main()
{
    auto data = "binary large object";
    auto rx = regex(".*");
    consume (data, rx); // this line is mentioned in the error message
}
Run Code Online (Sandbox Code Playgroud)

现在,我希望编译器推断出consume要实例化为

string consume!(string)(string, Regex!(char))
Run Code Online (Sandbox Code Playgroud)

但这似乎不会发生.错误如下:

func_template_with_regex.d(24): Error: template ftwr.consume(S) does not match any function template declaration
func_template_with_regex.d(24): Error: …
Run Code Online (Sandbox Code Playgroud)

type-inference d function-templates

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

Qt5、透明窗口和滚轮事件

我有一个最简单的测试用例应用程序:

TransWidget.cpp:

TransWidget::TransWidget(QWidget *parent) :
    QWidget(parent, Qt::Window | Qt::FramelessWindowHint)
{
    setAttribute(Qt::WA_ShowWithoutActivating);
    setAttribute(Qt::WA_TransparentForMouseEvents);
    setAttribute(Qt::WA_TranslucentBackground);
}

void TransWidget::paintEvent(QPaintEvent *)
{
    // some code to mark the presence of the window
}

void TransWidget::wheelEvent(QWheelEvent * ev)
{
    ev->ignore(); // keeps getting here no matter what I try!
}
Run Code Online (Sandbox Code Playgroud)

主要.cpp:

#include "TransWidget.h"
#include "OpaqueWidget.h"

#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    OpaqueWidget o;
    auto t = new TransWidget(&o);

    o.show();
    t->show();

    return a.exec();
}
Run Code Online (Sandbox Code Playgroud)

不透明小部件仅报告何时获得鼠标单击和滚轮事件。透明小部件覆盖不透明小部件。

鼠标点击按预期工作:

  • 穿过透明区域到达不透明部件;
  • 当在其绘制的(因此不透明的)区域中单击时,会被透明小部件捕获。

无论滚轮事件发生在何处,透明小部件都会捕获它们。相同的设置用于 Qt4.8。这是Qt5的一个bug吗?有什么可能的解决方法吗?

类似问题的解决方案似乎也不起作用: …

c++ winapi qt transparent mousewheel

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

PL/SQL包类型与模式类型

我想要做的是以下内容:

create or replace
package MyPackage
as
    type string_list_t is table of varchar2(32767);

    function GetPrimaryKeys    ( p_table_name varchar2, p_owner varchar2 )
        return string_list_t;
end MyPackage;
/

create or replace
package body MyPackage as

function GetPrimaryKeys ( p_table_name varchar2, p_owner varchar2 )
return string_list_t
is
    pk_descr string_list_t;
begin
    select cast( multiset (
        select cols.column_name
          from all_constraints cons, all_cons_columns cols
          where cols.table_name = p_table_name
          and cons.constraint_type = 'P'
          and cons.constraint_name = cols.constraint_name
          and cols.owner = p_owner
          and cons.owner = p_owner
    ) as …
Run Code Online (Sandbox Code Playgroud)

oracle plsql package plsqldeveloper nested-table

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

进入外层

我正在阅读"D编程语言"一书.它讲的是内部阶级.

class Outer{
    int x;

    this(){
        x = 99;
        new Inner;
    }

    class Inner{
        int x;

        this(){
            x = 5;
            writeln( "Inner x = ", x, "; Outer x = ", this.outer.x );
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

正如本书所说,为了能够访问类Outer的x,我需要使用this.outer.x.但令人困惑的是,"外"类的名称变成小写"外".使用正常的类名"Outer",编译器会给出错误消息.它就像编译器决定你需要使用什么作为名称并强制使用它生成的名称.

我的问题是,当我将"Outer"类重命名为"bLaH"时,现在我再也无法进行外部课程了.

class bLaH{
    int x;

    this(){
        x = 99;
        new Inner;
    }

    class Inner{
        int x;

        this(){
            x = 5;
            writeln( "Inner x = ", x, "; Outer x = ", this.bLaH.x );
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

访问外部类时使用的名称并不明显.第一个字母现在是小写,但编译器说"test1.bLaH"没有定义.(文件名是test1.d)

如果我将"this.bLaH"转换为"this.blah",可能认为编译器可能会将外部类的名称转换为全部小写,这次,编译器会说"未定义变量'blah'".

关于这个语言是否存在设计错误?作为程序员,我不喜欢编译器完成的这种类型的名称转换.

我在Windows XP上,DMD版本是2.060.

d class

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

要在C中睡觉,我应该使用时钟还是系统调用?

在cplusplus.com上查看了clock().他们的例子包括让进程等待一秒钟,然后在一个循环中输出一行,直到10秒已经消失.我需要在我正在做的家庭作业中做类似的事情.我想知道的是:如果我只是将我的程序发送到一个循环中,是不是使用系统资源来旋转我?在这种情况下,系统调用不会更好吗?

谢谢你的帮助!

c sleep system-calls

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

C++中的简单链接列表实现

我试图用c ++实现一个简单的链表.我可能在某处犯了一个愚蠢的错误.通过这个我想学习C++中的类和指针.对于代码

#include <iostream>
using namespace std;

class node
{
public: 
    node* next;
    int data;

    node(int d);
    void append(int d);
}; 

node::node(int d)
{
    data = d;
    next = NULL;
}


void node::append(int d)
{
    node nw = node(d);
    if(next==NULL)
        next = &nw;
    else
    {
        node *n = next;
        while((*n).next!=NULL)
        {
            n = (*n).next;
        }
        (*n).next = &nw;
    }
}
Run Code Online (Sandbox Code Playgroud)

我得到81作为1旁边的节点.

int main()
{
    node n = node(1);
    n.append(3);
    n.append(2);
    n.append(81);
    n = *(n.next);
    cout<< n.data << '\n';
}
Run Code Online (Sandbox Code Playgroud)

请帮我弄清楚我在哪里弄错了.

c++ pointers class linked-list

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

Oracle Dynamic'SQL select'查询记录类型

动态请求如下所示:

request := 'select * from ' || param_table_name || ' where ' || column_name_list;
Run Code Online (Sandbox Code Playgroud)

然后我做:

open cur1 for request;
Run Code Online (Sandbox Code Playgroud)

直接获取的记录的确切类型cur1直到运行时才会知道,因为它应该对应用此过程的任何表不施加任何限制.但是,我如何迭代查询返回的内容?

oracle plsql dynamic-sql

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