小编Ite*_*tor的帖子

如何使用模板参数的成员类型?

我的功能看起来像这样:

template<typename T, typename U>
T myfunc(T a, T b) {
    // the type of a.data and b.data is U
    // ...
}
Run Code Online (Sandbox Code Playgroud)

类型的例子TU看起来像这样:

class ExampleT {
public:
    int data;
};
Run Code Online (Sandbox Code Playgroud)

T这个类的名称在哪里data?而且类型dataU

我的函数必须在目前使用两个类型参数调用:

myfunc<T, U>(...);
Run Code Online (Sandbox Code Playgroud)

但第二种类型参数(U)是data第一种类型(T)内的变量类型.是否有可能U从模板中删除并检测它,例如使用decltype

可以使用所有最新的C++ 14功能.

c++ templates visual-c++ c++14

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

如何仅为Floating创建实例?

有一个类,我想为其定义一个实例.它看起来像这样:

data MyValue a = MyValue a

class TestClass a where
    funcOne:: (Real b) => a b -> a b
    funcTwo:: (Real b) => a b -> a b -> a b


instance TestClass MyValue where
    funcOne (MyValue x) = MyValue (x*pi)
    funcTwo (MyValue x) (MyValue y) = MyValue (x*y)
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Could not deduce (Floating b) arising from a use of `pi'
      from the context: Real b
Run Code Online (Sandbox Code Playgroud)

我理解错误,但我不知道如何解决它.

我无法更改(Real b)to,(Floating b)因为其他实例也应该使用Integral类型.但仅有MyValue意义Floating.有可能告诉编译器,instance …

haskell

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

如何要求 C++ 模板参数具有一些具有给定签名的方法?

我想定义一个类,它有一个模板参数T。我想确定,那T有一个void Update(uint32_t)和一个int32_t GetResult() const方法。我知道当我尝试调用这些方法之一时用户会收到错误,但我想确保(可能使用静态断言)它们尽快存在。

我只能找到解决方案来检查该类T是否派生自其他类U,但这不是我想要的。我希望允许任何具有上述方法的类。

c++

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

如何使用 php 运行 ftp 服务器?

我想在以下位置托管 az FTP 服务器:mywebsite.domain/ftpserver.php

XAMPP 服务器在我的计算机上运行。php 很重要,因为我想使用 mysql 数据库中的密码对用户进行身份验证,并且他们的目录名称也存储在数据库中。

或者如果有免费的 ftp 服务器,那么我如何从 php 创建 ftp 用户?

php mysql ftp

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

Java秋千关闭图标

我想创建一个关闭按钮.为此,我需要一个close图标,我想从当前的UI样式中获取.我找到了一个函数:UIManager.getIcon(key)

唯一的问题是,我不知道任何关键.我不知道,如何获得一个close图标.

java swing swingx

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

如何检测 WebGL 中的浮点精度?

lowpmediumphighp装置不每个设备上的相同的精度。如何检测它们的实际值(每个精度下浮点数的位长)?

我的意思是:

- lowp:   16bit float
- mediump 32bit float
- highp   64bit float (double)
Run Code Online (Sandbox Code Playgroud)

javascript opengl-es glsl webgl

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

如何使用Reader Monad与(Int - > Int)?

我想学习,如何使用Reader Monad.不幸的是,只有少量示例代码可用

我想创建一个Reader,其中包含环境和重新获取的值Int.我定义了这样的类型:

type IntRead = Reader Int Int
Run Code Online (Sandbox Code Playgroud)

我试过的代码是这样的:

addStuff :: Reader Int Int
addStuff = do  
    a <- (*2)  
    b <- (+10)
    return (a+b)  
Run Code Online (Sandbox Code Playgroud)

我得到一个错误,因为ReaderT是预期的.如何addStuff使用Reader Monad 创建一个函数?我应该在哪里为此功能提供环境?

monads haskell reader-monad

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

如何将numpy复数数组转换为两元素float数组?

我有一个numpy中的ndarray,它包含复杂的值.我想将每个转换为两个浮点值.我试了一下array real,并imag,但只有真正的部件在输出

import numpy as np

inp_array = np.array([[1,2+3.j,3,4], [5,6,7+1.j,8], [9,10,11,12]], dtype=np.complex64)

out_array = np.array([np.real(inp_array), np.imag(inp_array)])
Run Code Online (Sandbox Code Playgroud)

我想得到这个结果:

[[[1,0],[2,3],[3,0],[4,0]], [...], [...]]
Run Code Online (Sandbox Code Playgroud)

python numpy

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

如何为 mysql、mssql 和 sqlite 生成学说迁移?

我想使用学说迁移生成数据库迁移脚本。

我的一个客户有 mysql 数据库,另一个有 mssql,我们在我们的开发环境中使用 sqlite。

如果我使用 生成脚本php artisan doctrine:migrations:diff,那么它将从这一行开始:

$this->abortIf($this->connection->getDatabasePlatform()->getName() != 'mysql', 'Migration can only be executed safely on \'mysql\'.');
Run Code Online (Sandbox Code Playgroud)

如何从实体类中的更改以某种方式生成迁移脚本,使其也可以在 mysql、sqlsrv 和 sqlite 上使用?

php symfony doctrine-orm doctrine-migrations

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

如何在不带参数的情况下调用类型提示的 php 函数

我有一个 php 函数:

function myFunc(MyClass inst) {
    // ...
}
Run Code Online (Sandbox Code Playgroud)

有时,当我调用这个函数时,我不想传递任何参数,但这不起作用:

myFunc(null);
Run Code Online (Sandbox Code Playgroud)

错误信息是:

... must be an instance of MyClass , null given
Run Code Online (Sandbox Code Playgroud)

php oop type-hinting

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