问题列表 - 第49622页

将新元素插入已排序的链接列表时的Segfault

我使用以下函数将新节点插入到排序的整数链表中

 // Insert new element
template <class Type>
bool list<Type> :: Insert (const Type& NewElement)
{
    Node *NewNode, *TempNext, *TempPrevious;
    NewNode = new Node;
    NewNode -> Element = NewElement;

    for (TempNext = Head; TempNext != NULL; TempPrevious = TempNext, TempNext = TempNext -> Next) 
    {
        NewNode -> Next = TempNext;
        if (TempNext == Head) Head = NewNode; // Check for empty list
        else if (NewNode -> Element >= TempNext -> Element) continue; // Check for correct point in list
        else …
Run Code Online (Sandbox Code Playgroud)

c++ linked-list data-structures

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

如何使用信号量实现条件变量?

前段时间我一直在考虑如何相互实现各种同步原语.例如,在pthreads中,您可以获得互斥锁和条件变量,从中可以构建信号量.

在Windows API(或至少是旧版本的Windows API)中,存在互斥锁和信号量,但没有条件变量.我认为应该可以用互斥量和信号量来构建条件变量,但对于我的生活,我只是想不出办法.

有没有人知道这样做的好建筑?

algorithm mutex semaphore condition-variable

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

将参数传递给上一个活动

我想将活动B中的参数传递给A,其中B已由A启动.这可能吗?谢谢

android

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

获取在replyFinished()中启动QNetworkRequest的函数

我有以下问题:

我有一个类Foo,它封装了一个web-api.界面具有以下功能:

Foo :: addItem(QString id)
Foo :: updateItem(QString id)

两个函数都使用相同的 URL 启动QNetworkRequest,但数据的使用情况不同.因此我需要知道QNetworkRequest发起的插槽函数Foo :: replyFinished(QNetworkReply*wf_reply).

你怎么解决这个问题?

我可以使用变量存储QNetworkRequest的地址,以便稍后将其与wf_reply-> request()进行比较,但这对我来说似乎是一个黑客攻击.考虑到你可以在第一次执行replyFinished()之前调用addItem()或updateItem()一百次.最好的方法是向QNetworkRequest添加一个包含函数名称或id的sting或整数.

c++ qt

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

来自C#代码的dll函数调用期间出错

我用c ++创建了dll,想用c#调用它的函数.我有一个错误,如果函数,程序调用,返回字符串. Dll代码:

#include <string>
using namespace std;
#define EXPORT_API extern "C" __declspec(dllexport) 
EXPORT_API  void DllFunc()
{
    MessageBoxA(0,"DDL box", "Yeah!", 0);
}

EXPORT_API  string DllFuncStr()
{
    return "testStr";
}
Run Code Online (Sandbox Code Playgroud)

C#应用程序代码:

[DllImport("dllka.dll")]
 static extern void DllFunc();
[DllImport("dllka.dll")]
static extern string DllFuncStr();

 private void btnStart_Click(object sender, RoutedEventArgs e)
 {
     DllFunc();
     string str = DllFuncStr();           
 }
Run Code Online (Sandbox Code Playgroud)

"DllFunc();" - 效果不错,但在线"string str = DllFuncStr();" 我有一个错误:

运行时遇到了致命错误.错误的地址位于0x5e6dceca,位于线程0x16b0上.错误代码是0xc0000005.此错误可能是CLR中的错误,也可能是用户代码的不安全或不可验证部分中的错误.此错误的常见来源包括COM-interop或PInvoke的用户编组错误,这可能会破坏堆栈.

字符串类型有什么问题?如何解决这个问题?

c# c++ pinvoke

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

获取DBPedia信息框类别

我目前正在寻找一种通过SPARQL端点查询DBPedia的Infobox Onyology数据库的方法,以获取类的列表,所选类的子类以及给定类的属性.据我所知,您要么需要知道您正在寻找的属性,要么搜索特定的内容 - 我发现的所有示例似乎都基于您想要搜索特定内容的想法(比如某个高度以上的城市人口等),而我想建立一些可以有效"浏览"类别的东西.例如,从此类层次结构图上的"owl:Thing"的子类列表开始,向用户显示所选子类的子类列表.似乎可以通过映射wiki浏览这样的东西,但最好直接查询SPARQL端点.

是否有一些简单的SPARQL查询会返回这些类的可用类和属性?

更新: 通过迭代查询,我想出了一种方法来获得类层次结构:

SELECT ?subject WHERE {
     ?subject rdfs:subClassOf owl:Thing
}
Run Code Online (Sandbox Code Playgroud)

这返回了owl的子类列表:Thing,如果我用其中一个子类替换owl:Thing,我得到它的子类列表,直到没有子类,此时我可以选择所有的资源由所选子类给出的类型.不过,我仍然不太确定如何获得子类共有的所有属性.

更新2 现在就越来越近了.此查询为我提供了所有属性(dbpedia:property的子项),它们也是一个国家/地区,以及它们的标题:

SELECT DISTINCT ?prop ?title WHERE {
     ?country ?prop ?value.
     ?country a <http://dbpedia.org/ontology/Country>.
     ?prop rdf:type rdf:Property.
     ?prop rdfs:label ?title
}
Run Code Online (Sandbox Code Playgroud)

这实际上是我真正要求的.我现在要做的最后一件事是尝试按照它们出现的页数来排序(可能最常见的属性是最感兴趣的属性).

rdf sparql dbpedia

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

Ruby on Rails:自定义操作

我是rails的新手,所以我只是向你解释一下我的情况:

我有一个用户模型和一个UsersController.用户使用他们的电子邮件地址和密码登录.特殊用户可以通过在表单中​​键入被邀请者的电子邮件地址并点击提交来邀请其他用户.然后,受邀用户通过首次输入密码来接收包含激活其帐户的链接的邮件.

这是问题所在:

"邀请"表单映射到我的UsersController atm的create动作.但是我将"激活"表单映射到什么?

我是否可以定义自定义操作"激活"或可以访问的内容/users/3/activate(当然,这里也应该有一些身份验证令牌......)并激活ID为3的用户?

我在自定义操作中找到了一些东西,但我还没有完全了解它.

感谢任何帮助

ruby-on-rails ruby-on-rails-3

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

了解对象,范围,RAII的生命周期

下面的代码中,当我将一个未命名的A变量传递给ctor时B,该变量在该行之后被破坏.根据这个答案:

临时对象在它们所属的完整表达结束时被销毁.完整表达式是不是某个其他表达式的子表达式的表达式.通常这意味着它结束于; (or ) for if, while, switch etc.)表示语句的结尾.

我明白了,但是如果它被破坏了,那么这个类怎么能B知道它mamber_a变量的值呢?我知道复制的ctor A是enver.这怎么可能?

#include <iostream>
using namespace std;

class A 
{
        int sign;
        A();
        const A & operator=(const A &);
public:
        A(int x) : sign(x) { 
                cout << "A ctor : " << sign << endl; 
        }

        void WriteA() const { 
                cout << sign << endl; 
        }

        ~A() { 
                cout << "A dtor : " << sign …
Run Code Online (Sandbox Code Playgroud)

c++ scope raii

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

win7中写的winforms应用程序在win xp上看起来不同.为什么?

我在win 7上用winforms(.net 4.0)编写了一个简单的应用程序.应用程序看起来我想要的但是当我在windows xp上尝试它时,一切看起来都不一样.

我创建了一个示例示例,以展示它在win 7和xp上的外观.我可以做些什么来在两个系统上看到相同的外观?问题不仅在于背景和字体颜色,还在于控件.在这里,我展示了数字版本的外观,但是对于表格布局我也有问题.

赢7 赢得XP

 private void InitializeComponent()
    {
        this.numericUpDown1 = new System.Windows.Forms.NumericUpDown();
        this.groupBox1 = new System.Windows.Forms.GroupBox();
        ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit();
        this.SuspendLayout();
        // 
        // numericUpDown1
        // 
        this.numericUpDown1.DecimalPlaces = 2;
        this.numericUpDown1.Increment = new decimal(new int[] {
        1,
        0,
        0,
        131072});
        this.numericUpDown1.Location = new System.Drawing.Point(21, 26);
        this.numericUpDown1.Maximum = new decimal(new int[] {
        1,
        0,
        0,
        0});
        this.numericUpDown1.Name = "numericUpDown1";
        this.numericUpDown1.Size = new System.Drawing.Size(54, 22);
        this.numericUpDown1.TabIndex = 0;
        // 
        // groupBox1
        // 
        this.groupBox1.Location = new System.Drawing.Point(21, 82);
        this.groupBox1.Name = "groupBox1";
        this.groupBox1.Size = new System.Drawing.Size(226, 99); …
Run Code Online (Sandbox Code Playgroud)

windows-xp windows-7 winforms

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

JavaScript/CodeMirror - 刷新textarea

如何使用CodeMirror 2中的刷新功能?

刷新()

如果您的代码确实需要更改编辑器元素的大小(已经监听了窗口调整大小),或者取消隐藏它,那么您应该通过调用此方法来跟进,以确保CodeMirror仍然按预期进行查找.

我想在点击链接后刷新所有textareas

我试过了

  $('.CodeMirror').each(function(){
    getElementById($(this).attr('id')).refresh();
  });
Run Code Online (Sandbox Code Playgroud)

但它不起作用....

javascript jquery codemirror

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