标签: instance

是否没有标准(A a a)monad实例?

我的印象是,某个地方有一个实例,但我似乎无法找到它.我已经尝试导入Control.Monad,Control.Monad.Instances和Data.Either,如图所示

module Main where

import Control.Monad
import Data.Either
import Control.Monad.Instances

test :: [Either a b] -> Either a [b]
test = sequence

main = return ()
Run Code Online (Sandbox Code Playgroud)

但ghc告诉我它无法演绎(Monad(Either a)).添加

instance Monad (Either a) where
    return = Right
    Right b >>= f = f b
    Left a >>= _ = Left a
Run Code Online (Sandbox Code Playgroud)

使代码编译,但是这个实例声明似乎很普遍,如果它在某些标准模块中还没有出现,那对我来说没有意义.如果是的话,我应该在哪里找到它,如果不是,那么有没有理由呢?

--------------编辑---------------

请注意,我现在认为下面的user31708的答案("从4.6开始,实例在Data.Either本身.")是目前正确的答案.我不确定在这种情况下重新分配所选答案的正确协议,其中所选答案是在提出问题时的正确答案,所以我保持原样.如果还有其他指导方针,请纠正我.

import monads haskell instance either

16
推荐指数
3
解决办法
5226
查看次数

Objective-C中实例方法与类方法的目的

我查看了所有这些问题......

...他们解释的是当一个消息被发送到一个类时,实例方法如何在类的实例上使用,类方法与类一起使用.这很有用,但我很想知道为什么会使用类方法而不是实例方法.

methods class objective-c instance

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

创建不可变对象,在没有new的情况下实例化

我可以创建一个只使用=运算符实例化的String类,就像类一样吗?或者这是StringJava中特定于类的功能?

java string object instance

16
推荐指数
3
解决办法
1984
查看次数

C++类构造函数可以知道它的实例名称吗?

是否可以从类方法中知道对象实例名称/变量名称?例如:

#include <iostream>

using namespace std;

class Foo {
     public:
          void Print();
};

void Foo::Print() {
     // what should be ????????? below ?
     // cout << "Instance name = " << ?????????;
}

int main() {
    Foo a, b;
    a.Print();
    b.Print();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ constructor class instance

15
推荐指数
7
解决办法
7002
查看次数

实例变量与参数传递?有争论吗?

所以,

我最近一直在努力重新分解一些遗留代码,并且发现自己质疑我一直在做的一些重新分解决策的有效性.一个这样的查询是关于在对象内的方法之间使用实例变量进行对象共享.

具体来说,有许多地方将构造函数和方法拆分,并将局部变量提升为实例变量,从而允许从现在单独的方法进行访问.对我来说,这似乎是错误的.它破坏了封装,改变了范围并且可以影响生命周期,但是,这些类中的一些是性能相关的,因此我想知道重新分解这些方法使用参数传递的含义是什么呢?

更重要的是,我想知道我的假设是否有水?在私有方法之间共享时,对象的参数传递优先于实例变量吗?

c# variables constructor design-patterns instance

15
推荐指数
2
解决办法
2628
查看次数

django信号,如何使用"实例"

我正在尝试创建一个系统,使用户能够上传zip文件,然后使用post_save信号提取它.

class Project:
    ....
    file_zip=FileField(upload_to='projects/%Y/%m/%d')

@receiver(post_save, sender=Project)
def unzip_and_process(sender, **kwargs):
    #project_zip = FieldFile.open(file_zip, mode='rb')
    file_path = sender.instance.file_zip.path
    with zipfile.ZipFile(file_path, 'r') as project_zip:
        project_zip.extractall(re.search('[^\s]+(?=\.zip)', file_path).group(0))
        project_zip.close()
Run Code Online (Sandbox Code Playgroud)

unzip_and_process当提供正确的文件路径时,方法工作正常(在这种情况下,我需要提供instance.file_zip.path.但是,我无法使用信号获取/设置实例.关于信号的Django文档不清楚,没有示例.所以,做什么我做?

django signals instance

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

通过对象"坏形式"调用静态方法?为什么?

在最近的一个问题中,有人问过静态方法,其中一个答案表明你通常会用以下方法调用它们:

MyClassName.myStaticMethod();
Run Code Online (Sandbox Code Playgroud)

对此的评论还表明你也可以通过一个对象来调用它:

MyClassName myVar;
myVar.myStaticMethod();
Run Code Online (Sandbox Code Playgroud)

但它被认为是不好的形式.

现在在我看来,这样做实际上可以让我的生活更轻松,所以我不必担心什么是静态的(a).

有一些问题,通过对象调用静态函数?显然你不想创建一个全新的对象来调用它:

Integer xyzzy;
int plugh = xyzzy.parseInt ("42", 10);
Run Code Online (Sandbox Code Playgroud)

但是,如果您已经有一个所需类型的对象,使用它是否有问题?


(a)显然,我不能用以下方法调用非静态方法:

MyClassName.myNonStaticMethod();
Run Code Online (Sandbox Code Playgroud)

但这不是我在这里问的问题.

java methods static instance

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

如何基于标记隐藏EC2中的实例 - 使用IAM?

我想在IAM中创建一个新用户,并允许他能够创建新的EC2实例,但只能查看/管理他创建的那些实例.

这可能与IAM有关吗?

这是我尝试的组策略:

{
"Statement": 
[
{
  "Effect": "Allow",
  "Action": 
  [
    "ec2:DescribeImages",
    "ec2:DescribeKeyPairs", "ec2:DescribeSecurityGroups",
    "ec2:DescribeAvailabilityZones"
  ],
  "Resource": "*"
},

{
  "Effect": "Allow",
  "Action": 
  [
    "ec2:DescribeInstances","ec2:RunInstances", "ec2:TerminateInstances",
     "ec2:StartInstances", "ec2:StopInstances", "DescribeInstanceAttribute", "DescribeInstanceStatus"
  ],
  "Resource": "*",
  "Condition": 
  {
    "StringEquals": 
    {
      "ec2:ResourceTag/tag": "TheValueOfTheTag"
    }
  }

}
]
}
Run Code Online (Sandbox Code Playgroud)

instance amazon-ec2 amazon-web-services amazon-iam

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

没有这样的实例字段

我正在尝试让我的应用程序在使用onSaveInstanceState保存布尔值来更改屏幕方向时保存一些数据mCheated.

我设置了很多断点mCheated,并且变量视图中的布尔值出现错误

mCheated= No such instance field: 'mCheated'
Run Code Online (Sandbox Code Playgroud)

我不知道为什么我在活动开始时声明值为false,如果按下按钮则将其更改为true.谁能帮我吗?

package com.bignerdranch.android.geoquiz;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

/**
 * Created by Chris on 20/02/2015.
 */
public class CheatActivity extends Activity {

    public static final String EXTRA_ANSWER_IS_TRUE = "com.bignerdranch.android.geoquiz.answer_is_true";
    public static final String EXTRA_ANSWER_SHOWN = "com.bignerdranch.android.geoquiz.answer_shown";

    private static final String KEY_INDEX = "index";

    private boolean mAnswerIsTrue;

    private TextView mAnswerTextView;
    private Button mShowAnswer;

    private boolean mCheated = false;

    private void …
Run Code Online (Sandbox Code Playgroud)

java variables android instance

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

类的实例使用什么资源?

How efficient is python (cpython I guess) when allocating resources for a newly created instance of a class? I have a situation where I will need to instantiate a node class millions of times to make a tree structure. Each of the node objects should be lightweight, just containing a few numbers and references to parent and child nodes.

For example, will python need to allocate memory for all the "double underscore" properties of each instantiated object (e.g. the docstrings, …

python memory-management cpython class instance

14
推荐指数
4
解决办法
500
查看次数