小编Max*_*Max的帖子

人们通常如何开发Haskell模块?

对不起有点笼统的问题.我是Haskell的新手,我是那种通过潜入问题并在我进行中弄清楚所需的部分而学习的人.所以,我已经开始开发一个Haskell模块,旨在进行简单的线性回归.这是我的目录设置:

mymod/
- mymod.cabal
- src/
-- MyMod/
--- Linear.hs
--- Linear/
---- Regression.hs
--- Data.hs
--- Data/
---- Examples.hs
- tst/
Run Code Online (Sandbox Code Playgroud)

我的cabal文件如下所示:

library
  exposed-modules:     MyLib.Linear, MyLib.Linear.Classifier, 
                       MyLib.Data, MyLib.Data.Examples
  build-depends:       base == 4.6.*
  hs-source-dirs:      src
Run Code Online (Sandbox Code Playgroud)

现在,我正在编写Examples模块,它本质上是一个CSV文件解析器.看起来像这样:

module Exampels (load) where

import Text.ParserCombinators.Parsec
import Control.Applicative

examples = line `endBy` eol
line = cell `sepBy` (char ',')

cell :: GenParser Char st Double
cell = rd <$> many1 (noneOf ",\n")
    where rd = read :: String -> Double

eol = …
Run Code Online (Sandbox Code Playgroud)

haskell cabal

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

添加 GeometryReader 后的对齐方式更改

我的布局基本上是这样的:

ZStack(alignment: .bottom) {
    GeometryReader { geometry in
        ZStack {
            Text("Centered")
        }
        .frame(width: geometry.size.width, height: geometry.size.height, alignment: .center)
        .background(Color.red)
    }
    Group {
        GeometryReader { geometry in // This GeometryReader is causing issues.
            VStack {
                Text("I want this at the bottom")
            }
            .frame(width: geometry.size.width, height: nil, alignment: .topLeading)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

渲染时,两个 Text 元素都渲染在屏幕中央。第二个文本元素的容器占据了屏幕的整个宽度,这是预期的。如果我删除有问题的 GeometryReader,则文本会在屏幕底部正确呈现,但显然框架并未设置为屏幕的整个宽度。为什么会这样?

ios swift swiftui

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

什么是aop的注释等价物:scoped-proxy proxy-target-class ="false"?

我有一个用XML定义的bean,如下所示:

<bean ... scope="workflow">
  <aop:scoped-proxy proxy-target-class="false" />
</bean>
Run Code Online (Sandbox Code Playgroud)

我从配置文件中删除此bean并标记bean实例化的类@Component.从关于范围代理的其他问题,我知道注释proxyMode上有一个@Scope.在这种情况下,如果我想模仿上面的XML,那是proxyMode = ScopedProxyMode.NO一样的proxy-target-class="false"吗?像这样:

@Component
@Scope(value = "workflow", proxyMode = ScopedProxyMode.NO)
Run Code Online (Sandbox Code Playgroud)

java spring

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

实现接口的指针的通用类型是什么?

我有一个这样的界面

type A interface {
  SomeMethod()
}
Run Code Online (Sandbox Code Playgroud)

我通过结构指针实现了该接口:

type Aimpl struct {}

func (a *Aimpl) SomeMethod() {}
Run Code Online (Sandbox Code Playgroud)

我有一个通用函数,它接受带有 A 参数的函数,如下所示:

func Handler[T A](callback func(result T)) {
  // Essentially what I'd like to do is result := &Aimpl{} (or whatever T is)
  callback(result)
}
Run Code Online (Sandbox Code Playgroud)

A另外我应该补充一点,我无法修改(它来自图书馆)的定义。我试过这个:

type MyA[T any] interface{
  A
  *T
}
Run Code Online (Sandbox Code Playgroud)

但是这段代码给了我一个错误:

func Handler[P any, T MyA[P]](callback func(result A)) {
    result := new(P)
    callback(result) // result does not implement interface. It's a pointer to a type, not a type …
Run Code Online (Sandbox Code Playgroud)

generics pointers go

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

正确的方法来销毁具有指针值的地图

std::map用来映射字符串值MyType *.我的地图声明如下所示:

map<string, MyType *> *my_map = new map<string, MyType>;
Run Code Online (Sandbox Code Playgroud)

my_map是我的一个类的私有成员变量.我的问题是我不确定如何破坏地图.删除地图时,我还想调用地图中包含的delete所有内容MyType *.这是我目前的析构函数:

my_map->erase(my_map->begin(), my_map->end());
delete my_map;
Run Code Online (Sandbox Code Playgroud)

这会删除地图中包含的指针,还是需要在调用erase之前迭代地图以删除每个指针?

c++ pointers stl

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

多次捕获预期方法调用的参数(EasyMock)

我的测试中有以下几行:

Capture<MyType> myCapture = Capture.newInstance();
expect(myMockedObject.myMethod(capture(myCapture)).andReturn(...).times(2);
Run Code Online (Sandbox Code Playgroud)

当模拟被验证但myCapture.getValues().size()返回1 时,这种期望会通过.我期望每次方法调用捕获.如何捕获两个方法调用的参数?

java junit easymock

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

为什么Redux减速机必须是无副作用的?

我一直在我的React应用程序中使用Redux,而且一直困扰着我.Redux的文档清楚地表明reducer应该是无状态的.你经常会看到这样的例子:

function reducer(state = { exampleState: true }, action) {
  switch(action.type) {
  case "ACTION_EXAMPLE":
    return Object.assign({}, state, { exampleState: false });
  default:
    return state;
  }
}
Run Code Online (Sandbox Code Playgroud)

我的问题是为什么要这样做呢?JavaScript是单线程的.减速机内不存在竞争条件.据我所知,Redux商店只能返回商店的当前状态,所以看起来很奇怪有很多关注纯函数.

javascript reactjs redux

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

如何修复“目标源...应该位于...”?

我有一个 Swift 包,其中包含一个名为mylib. 我在 Xcode 中收到警告Source files for target mylib should be located under /path/to/SomeSwiftPackage/Sources/mylib ,. 问题是,这正是我的源文件所在的位置。我的Package.swift文件看起来像这样:

// swift-tools-version:5.5

import PackageDescription

let package = Package(
    name: "SomeSwiftPackage",
    products: [
        .library(
            name: "SomeSwiftPackage",
            targets: ["SomeSwiftPackage"]),
    ],
    dependencies: [],
    targets: [
        .target(
            name: "mylib",
            dependencies: []
        ),
        .target(
            name: "SomeSwiftPackage",
            dependencies: [
                .target(name: "mylib"),
            ]
        )
    ]
)
Run Code Online (Sandbox Code Playgroud)

我的文件夹结构如下所示:

SomeSwiftPackage/
  Package.swift
  Sources/
    SomeSwiftPackage/
      SomeSwiftPackage.swift
    mylib/
      include/
        mylib.h
      mylib.c
      helper.h
      helper.c
Run Code Online (Sandbox Code Playgroud)

唯一mylib不直接位于下面的文件/path/to/SomeSwiftPackage/Sources/mylib是包含目录中所需的标头。我怎样才能删除这个警告?

c xcode swift swift-package-manager

8
推荐指数
0
解决办法
1537
查看次数

如何告诉Maven在本地搜索父POM的位置?

我在我的机器上检查了许多Maven 项目,格式如下:

my-project/
  pom.xml
my-other-project/
  pom.xml
Run Code Online (Sandbox Code Playgroud)

my-other-project声明POM文件my-project将用作父级.问题是my-project它还没有在maven存储库中,这些是两个独立的项目,因此maven无法找到本地搜索的父POM.有没有办法告诉Maven my-project/在搜索存储库之前查找父POM?

这是我在运行时得到的确切错误mvn package:

[INFO] Scanning for projects...
Downloading: https://repo.maven.apache.org/maven2/com/mycom/my-project/1.0.0/pom-base-1.0.0.pom
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM for com.mycom:my-other-project:1.0.0: Could not find artifact com.mycom:pom-base:pom:1.0.0 in central (https://repo.maven.apache.org/maven2) and 'parent.relativePath' points at wrong local POM @ line 39, column 11
Run Code Online (Sandbox Code Playgroud)

编辑:

可以<relativePath>../my-project</relativePath在父声明中设置,但如果这可以自动发生会很好.

java maven

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

将 JSON 文件添加到应用程序

我想向我的应用程序添加一个 JSON 文件并在运行时从该文件中读取。我已经在网上寻找如何做到这一点,但大部分信息都与阅读文件有关。我在网上找不到有关如何在运行时提供文件的任何信息。网上的大部分内容似乎都是从包中读取的,但我不知道如何创建包或如何向其中添加 JSON 文件。有人可以提供一些信息吗?

ios swift

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