标签: instance

Haskell无法创建TypeClass的实例

我是Haskell的新手,并且正在尝试使用实例创建一个类.

我有以下代码,我试图说:1)分支可以在其第一个位置保持任何类型,2)创建一个类线性,它取线性的东西,并返回一个数字3)使分支成为线性的实例,如果分支持有的第一件事是Num类的一部分.

data Branch a = Branch a Integer deriving (Show, Eq)

class Linear l where
    length :: (Num a) => l -> a

instance (Num a) => Linear (Branch a) where
    length (Branch len _) = len
Run Code Online (Sandbox Code Playgroud)

我得到错误:无法推断(a~a1)来自实例声明绑定的上下文(Num a).....

有谁知道如何在Haskell中表达我想说的是什么?

haskell types instance typeclass

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

将Firefox嵌入到.NET控件中

我是c#和.net编程的初学者,我想知道我是否可以使用Mozilla Firefox作为webBrowser控件的实例浏览器,因为默认情况下webBrowser控件使用Internet Explorer.

.net c# firefox instance webbrowser-control

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

dismissViewControllerAnimated是否删除控制器的实例

对于我的应用程序,我想要有一些相同视图控制器的不同实例.现在,我只是创建一个这样的新实例:

iSafeViewController *tab = [[iSafeViewController alloc] init];

[tab setModalPresentationStyle:UIModalPresentationFullScreen];
[tab setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];

[self presentViewController:tab animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

大.既然这是在iSafeViewController类中完成的,我还有另一个按钮,它当前只是关闭堆栈中的最新控制器.

 - (IBAction)closeTab:(id)sender {
    [self dismissViewControllerAnimated:YES completion:nil];
 }
Run Code Online (Sandbox Code Playgroud)

但是,我真的希望能够回到这些实例.所以,我有两个问题.

  1. 并dismissViewControllerAnimated从内存中删除该控制器的实例.如果没有,有没有办法可以重新呈现它.

  2. 那么可能有更好的方法来浏览viewController实例presentViewControllerAnimated.至少,是否有更好的方法来创建一个viewController的新实例,并能够导航到每个实例,希望不在堆栈中.换句话说,如果有三个viewController实例,有没有办法可以从第三个实例转到主实例?

任何想法,将不胜感激.谢谢.

oop cocoa-touch objective-c multiple-instances instance

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

如何在自定义对象上指定.constructor.name?

这个问题确实必须相当简单,但我不能google或duckduck答案,可能是因为99%的初学者教程涉及Person使用name属性创建一个对象(与constructor.name无关但污染了搜索结果).

的实例Object对象可以使用instance.constructor.name来检测:

var foo = new Object;
foo.constructor.name; // "Object"
Run Code Online (Sandbox Code Playgroud)

如何在我自己的对象上设置构造函数名称?

var Bar = function(){};
var baz = new Bar;
baz.constructor.name // "" <- Empty string
Run Code Online (Sandbox Code Playgroud)

javascript constructor object instanceof instance

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

全局类的实例

仍然试图了解C#(主要与C合作).我有一个类"设备",并希望创建该类的实例,但也想全局访问实例,因为我在我的GUI方法中使用它们太多了.

 public class Device
    {
        public string Name;
        public List<string> models = new List<string>();
        public List<string> revisions = new List<string>();
        ...
    }
Run Code Online (Sandbox Code Playgroud)

以某种方式在全球宣布:

 Device Device1 = new Device();
 Device1.Name = "Device1";
Run Code Online (Sandbox Code Playgroud)

然后在WPF方法中访问它:

 private void DeviceViewItem_Selected(object sender, RoutedEventArgs e)
    {
       TreeViewItem selected = (TreeViewItem)sender;

        if (selected.Name == Device1.Name)
        {
            Device1.Models.Add("something");
            Device1.Revisions.Add("something");
        }
Run Code Online (Sandbox Code Playgroud)

我一直在阅读关于单例模式,但看起来你必须创建一个单例类,但我的"设备"类被多次使用来创建许多设备.也许我只是不明白这种模式.

c# wpf singleton class instance

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

获取自定义类的实例数

我在xcode中创建了一个自定义类:PaperPack并定义了2个即时变量:title和author-

然后我分配2个类的实例,如下所示:

PaperPack *pack1 = [[PaperPack alloc] init];
pack1.title = @"Title 1";
pack1.author = @"Author";

PaperPack *pack2 = [[PaperPack alloc] init];
pack1.title = @"Title 2";
pack1.author = @"Author";
Run Code Online (Sandbox Code Playgroud)

那么我如何计算和返回我用该类创建的实例数?

counter objective-c multiple-instances instance ios

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

在typescript中的其他类的函数中创建类实例

我想调试我的项目,我发现创建类的实例有一个小问题.我试着用简单的例子来描述它.

//this is saved in file Engine.ts
module Car {
    export class Engine {
        name: string;

        constructor(name: string) {
            this.name = name;
         }

         getName(): string{
            return this.name;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这个类用他的名字描述了简单的引擎.现在我想在某些车辆中创建引擎:

///<reference path="Engine.ts"/>
//this is saved in file app.ts
module Car {
    export class Vehicle {
        name: string;
        constructor(name: string) {
            this.name = name;
        }
        buildCar() : string {
            var engine = new Engine("Volkswagen 1.9TDI");
            return "Name of the vehicle is " + this.name + " and has engine " …
Run Code Online (Sandbox Code Playgroud)

class function instance typescript

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

定义生成元素C++向量的函数时,正确的方法是什么

我必须在C++中定义一个函数,它生成一个类Foo的向量并返回它.

我可以用不同的方式定义它,它们都是完全相同的:

C样式参数传递:

void generateFooVector(vector<Foo> * result)
{
    for (int i = 0; i < 100; i++)
    {
        Foo f = Foo();
        result->push_back(f);
    }
}
int main()
{

    vector<Foo> result;
    generateFooVector(&result);
}
Run Code Online (Sandbox Code Playgroud)

参考传球:

void generateFooVector(vector<Foo> & result)
{
    for (int i = 0; i < 100; i++)
    {
        Foo f = Foo();
        result->push_back(f);
    }
}
int main()
{
    vector<Foo> result;
    generateFooVector(result);
}
Run Code Online (Sandbox Code Playgroud)

实例化向量并返回指针:

vector<Foo> * generateFooVector()
{
    vector<Foo> * result = new vector<Foo>();
    for (int i = 0; i < …
Run Code Online (Sandbox Code Playgroud)

c++ vector instance parameter-passing pass-by-reference

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

为什么java不允许创建内部类的实例?

我有一个主类"m"和2个内部类叫做sub1,sub2,其中sub2是静态类:

public class m
{
  String n="n";
  static String s="s";
  public class sub1
  {
    public void fn(){System.out.println(n);}
    //static public void fs(){System.out.println(s);}
  }
  static class sub2
  {
    //public void fn(){System.out.println(n);}
    static public void fs(){System.out.println(s);}
  }
  public void f()
  {
    sub1 s1=new sub1();//OK, no error
    sub2 s2=new sub2();//OK
  }

  public static void main(String[] args)
  {
    m obj=new m();
    sub1 s1=new sub1();//Error
    s1.fn();
    //s1.fs();
    sub2 s2=new sub2();//OK
    //s2.fn();
    s2.fs();
  }
}
Run Code Online (Sandbox Code Playgroud)

我使用Openjdk在linux下编译它,它报告错误

$ java -version
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-8u91-b14-3ubuntu1~16.04.1-b14) …
Run Code Online (Sandbox Code Playgroud)

java program-entry-point class instance

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

在Java中创建动态给定类的实例

我需要一个函数来在java中创建动态给定类的实例.

我找到了很多样本​​但是在所有样本中,要实例化的类在运行时之前就已知.

有用户定义的类:

class Student { //some code }
class Teacher { //some code }
class Course { //some code }
Run Code Online (Sandbox Code Playgroud)

我需要的是

List<class> MyFunction(<class>) {

  List<class> items = new ArrayList<class>();

  for(int i = 0; i < 5; i++) {

    create_a_new_class_instance;

    items.add(new_created_instance);
  }

  return items;

}
Run Code Online (Sandbox Code Playgroud)

我将如何使用

List<Student> students = MyFunction(Student);
List<Teacher> teachers = MyFunction(Teacher);
List<Course> courses = MyFunction(Course);
Run Code Online (Sandbox Code Playgroud)

希望有人帮忙.

这是我在Stackoverflow中的第一个问题,对由此带来的任何不便表示歉意.

Utku

java class dynamic instance

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