标签: user-defined

如何定义"Do-Nothing"排序?

我正在开发一个系统,我需要能够通过给定的谓词对向量进行排序,我的类不应该控制它.基本上,我传给他们一个派生类,他们盲目地对它进行排序.

作为"令人愉快的怪癖"之一,排序模式之一是进入顺序.这是我到目前为止所得到的.

struct Strategy
{
   virtual bool operator()(const Loan& lhs, const Loan& rhs) const = 0;
};

struct strategyA : public Strategy
{
   bool operator()(const Loan& lhs, const Loan& rhs) const
   {
      return true;
   }
};

struct strategyB : public Strategy
{
   bool operator()(const Loan& lhs, const Loan& rhs) const
   {
      return lhs.getID() > rhs.getID();
   }
};

struct strategyC : public Strategy
{
   bool operator()(const Loan& lhs, const Loan& rhs) const
   {
      return lhs.getFee() > rhs.getFee();
   }
};
Run Code Online (Sandbox Code Playgroud)

显然,由于策略A是反身的,它不能被使用,如果我把它设置为假,它会把一切都视为平等,我可以亲吻我的数据再见.

所以这是我的问题.有没有办法定义一个谓词函数来排序一个不会改变任何东西的向量? …

c++ sorting predicate vector user-defined

5
推荐指数
2
解决办法
248
查看次数

Oracle PIVOT子句中的用户定义聚合函数

无法在Oracle PIVOT子句中使用用户定义的聚合函数.

我创建了一个名为string_agg的用户定义聚合函数.
我可以在一个简单的声明中使用它,例如......

select id, string_agg(value) from
(
    select 'user1' as id, 'BMW' as value,   'CAR'      as type from dual    union
    select 'user1' as id, 'Audi' as value,  'CAR'      as type from dual    union
    select 'user2' as id, 'Honda' as value, 'CAR'      as type from dual    union
    select 'user1' as id, 'Dell' as value,  'COMPUTER' as type from dual    union
    select 'user1' as id, 'Sony' as value,  'COMPUTER' as type from dual    union
    select 'user2' as id, 'HP' as …
Run Code Online (Sandbox Code Playgroud)

database oracle pivot aggregate user-defined

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

如何从Velocity Template Script(VTL)中抛出用户定义的异常?

如何从Velocity Template Script(VTL)中抛出用户定义的异常?

从我的速度脚本,我需要根据条件抛出异常,以便调用者可以捕获异常并向最终用户提供有用的错误消息.

例如.

#if($passwordfield1 != $passwordfield2)
throw an exception here
#elseif($passwordfield1 == $passwordfield2)
do something
#end
Run Code Online (Sandbox Code Playgroud)

在上面的示例中,如果passwordfield1和passwordfield2不匹配,则应抛出适当的异常,并且需要将其传播给最终用户.

有没有办法从速度脚本实现这一点?如果没有,请建议另一种方法.

velocity exception vtl user-defined

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

Postgres 9.3中JSON和用户定义类型的比较

我想知道为什么在Postgres 9.3中对JSON支持有如此多的大惊小怪.JSON优于用户定义类型(UDT)有哪些优势?使用UDT有哪些缺陷?访问具有UDT的表是否效率低下?ALTER TYPE ADD属性是否缓慢?Postgres如何物理存储UDT?

请解释并提供其他信息的链接.

postgresql performance json types user-defined

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

在提取/替换操作期间保留对象属性的方法

最近我在我的R代码中遇到了以下问题.在一个函数中,接受一个数据框作为参数,我需要添加(或替换,如果它存在)一个列,其中的数据是根据数据框的原始列的值计算的.我编写了代码,但是测试显示我使用的数据框提取/替换操作导致了对象的特殊(用户定义)属性丢失.

在通过阅读R文档(http://stat.ethz.ch/R-manual/R-patched/library/base/html/Extract.html)意识到这一点并确认该行为后,我决定非常简单地解决问题 -通过在提取/替换操作之前保存属性并在之后恢复它们:

myTransformationFunction <- function (data) {

  # save object's attributes
  attrs <- attributes(data)

  <data frame transformations; involves extract/replace operations on `data`>

  # restore the attributes
  attributes(data) <- attrs

  return (data)
}
Run Code Online (Sandbox Code Playgroud)

这种方法奏效了.然而,偶然地,我遇到了另一条R文档(http://stat.ethz.ch/R-manual/R-patched/library/base/html/Extract.data.frame.html),它提供了恕我直言解决相同问题的有趣(并且,可能是更通用的?)替代方法:

## keeping special attributes: use a class with a
## "as.data.frame" and "[" method:

as.data.frame.avector <- as.data.frame.vector

`[.avector` <- function(x,i,...) {
  r <- NextMethod("[")
  mostattributes(r) <- attributes(x)
  r
}

d …
Run Code Online (Sandbox Code Playgroud)

attributes r extract object user-defined

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

向图像/照片添加自定义/用户定义的元数据?

我正在编写一些需要向图像/照片添加自定义字段的软件。特别适用于 iOS/OS X,但理想的解决方案是某种行业标准或与平台无关的方法。

EXIF 的评论字段实际上并不可行,因为许多照片管理/照片编辑应用程序允许用户直接编辑该字段。

目前我唯一合理的解决方案是使用 XMP sidecar 文件并在其中添加自定义标签,因为 XMP 正式要求每个读取 XMP 的应用程序忽略它不理解的任何标签。

Apple 平台上的问题在于,XMP 文件用于存储原始图像的编辑/增量,并且照片框架可能会认为它完全拥有该文件,并且在某些情况下可能会删除整个文件。

有谁知道有更适合的替代方案吗?

任何帮助将不胜感激。此时即使是个人意见也可能有所帮助。

xmp exif metadata photo user-defined

5
推荐指数
0
解决办法
1392
查看次数

IN where语句中的mysql用户变量

我现在放弃了,并通过其他方式对其进行了排序,但是由于“好奇心杀死了猫”,我试图找出如何在IN where语句中使用mysql查询@variables:

因此,从此:

SELECT * FROM table1 WHERE table1.ID IN (794,758)
Run Code Online (Sandbox Code Playgroud)

尝试包含一个变量,这将返回语法错误:

SET @variousids="(794,758)";
SELECT * FROM table1 WHERE table1.ID IN @variousids
Run Code Online (Sandbox Code Playgroud)

这仅返回第一个值:

SET @variousids="794,758";
SELECT * FROM table1 WHERE table1.ID IN (@variousids)
Run Code Online (Sandbox Code Playgroud)

我尝试了不同的语法,值,但未找到有关定义值列表的任何特定文档。

mysql select user-defined

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

Jupyter Notebook:导入.ipynb文件并访问其他.ipynb文件中给出错误的方法

我对Jupyter Notebook很陌生。我玩了一段时间。但这是我第一次尝试将另一个笔记本导入我的主班。

作为参考,我正在使用Anaconda 4.3.1和Python v2.7。

我正在尝试将我在python项目中所做的工作复制到jupyter笔记本中。它需要将其他.ipynb文件(从原始.py文件转换)导入到其中,以根据需要使用相关方法。

为此,我遵循了Jupyter Nbviewer 步骤链接上给出的指导,该指导是通过对以下堆栈Question的初步搜索找到的。它给了我一些主意,但是在一个阶段之后并没有帮助我。

我将引导您完成我执行的步骤和尝试过的示例程序。

  1. 创建了一个小的.ipynb文件abc.ipynb,如下所示

    def prt_n(str):
        print(str)
    if __name__ == '__main__':
        prt_n("in abc")
    
    Run Code Online (Sandbox Code Playgroud)
  2. 创建了一个.ipynb文件,以从上面给出的Jupyter链接导入Jupyter Notebook。说,importer.ipynb。

  3. 运行importer.ipynb

  4. import abc

  5. str="Hello Me"

  6. 测试步骤将abc.__name__结果abc作为输出。

  7. abc.prt_n(str) 引发以下错误

* ------------------------------------------------- --------------------------

AttributeError                            Traceback (most recent call last)
<ipython-input-9-2fb88a43c9e5> in <module>()
Run Code Online (Sandbox Code Playgroud)

----> 1 abc.prt_n(str)AttributeError:“模块”对象没有属性“ prt_n” *

我希望答案会是Hello Me

稍后,我想实际创建一个myMain.ipynb文件,并希望包含2-3个这样的笔记本,并使用必需的参数调用它们的方法。

一个这样的示例可以是efg.ipynb如下文件:

import abc a="Hello Notebook" abc.prt_n(a)

我还想确保是否还有其他方法可以做到这一点?

注意:我已经检查了sys.executable和sys.path。两者都具有相同的python路径值。

欢迎任何帮助!

python module user-defined anaconda jupyter

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

perl6如何在用户定义的字符类中插入变量?

我正在尝试做的是允许程序根据遇到的文本来定义字符类。但是,<[]>从字面上接受字符,并且以下产生错误:

my $all1Line = slurp "htmlFile";
my @a = ($all1Line ~~ m:g/ (\" || \') ~ $0 {} :my $marker = $0; http <-[ $marker ]>*? page <-[ $marker ]>*? /); # error: $marker is taken literally as $ m a r k e r
Run Code Online (Sandbox Code Playgroud)

我想匹配所有格式为“ https:// foo?page = 0?ssl = 1 ”或“ http ... page ...”的链接

非常感谢你!

variables perl6 user-defined character-class raku

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

.equals()用于Java中的用户定义类

请参阅以下代码

class TestToString 
{
  public static void main(String args[]) 
  {
    CheckToString cs = new CheckToString (2);
    CheckToString c = new CheckToString (2);
    if( cs.equals(c))
       System.out.println(" Both objects are equal");
    else
       System.out.println(" Unequal objects ");
  }
}

class CheckToString 
{
   int i;
   CheckToString () 
   {
      i=10;
   }
   CheckToString (int a) 
   {
     this.i=a;
   }
}
Run Code Online (Sandbox Code Playgroud)

输出: 不等的对象

但我期待输出会是

两个对象都是平等的

我明白这两个对象有不同的反馈,

System.out.println(cs); //com.sample.personal.checkToString@19821f
System.out.println(c); //com.sample.personal.checkToString@addbf1
Run Code Online (Sandbox Code Playgroud)

但我问,为什么他们有不同的推荐?而在下面的例子中,对象具有相同的存储位置.

Integer a = new Integer(2);
Integer b = new Integer(2);
System.out.println(a);           //2
System.out.println(b);           //2
Run Code Online (Sandbox Code Playgroud)

我将用户定义类的对象与预定义类的对象进行比较.似乎用户定义类的对象与Integer类的对象的行为相同,其值超过-128到127.为什么这两种情况的引用都不同?(对于Integer类,其值在-128到127之间,对于用户定义的类不同)

java equals user-defined

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