我有一些代码有很多重复。
type RecordA = {
Name: string
// ...
}
type RecordB = {
Name: string
// ...
}
val getTheHandler: (name: string) -> (() -> ())
let handleA (record: RecordA) =
(getTheHandler record.Name) ()
let handleB (record: RecordB) =
(getTheHandler record.Name) ()
Run Code Online (Sandbox Code Playgroud)
我想知道是否可以编写一些通用函数来让我简化/重构getTheHandler record.Name. 在尝试重构该片段时,编译器希望选择一种记录类型或另一种记录类型。
所以尝试这个,我得到一个编译器错误:
let shorter (record: 'T) =
(getTheHandler record.Name) ()
// later:
shorter myRecordA // FS0001: This expression was expected to have type RecordB but here has type RecordA
Run Code Online (Sandbox Code Playgroud)
这可能吗?使这项工作有效的唯一方法是将成员函数添加到每个记录类型吗?
我目前正在编写一个模板,该模板根据输入的类别进行不同的操作.
有3个案例我想加入我的特质课程.
答:该类型有一个typedef
type_category,使用它.B.类型没有typedef,使用类型
regular_tag(最常见的情况)C.我的专业,
std::list<T>使用special_tag任何类型T.
我该如何管理?做A.和C.或B.和C很简单.但我不知道如何获得所有3.
一个例子可能会使它更容易理解.
class Foo
{
typedef foo_tag type_category;
}
class Bar;
my_traits<Foo>::type(); // makes a foo_tag
my_traits<Bar>::type(); // makes a regular_tag
my_traits<std::list<Baz>>::type(); // makes a special_tag because I want special list proce
Run Code Online (Sandbox Code Playgroud)
ssing.
我需要提取在Outlook 2007中显示为自动填充条目的所有电子邮件.我主要需要创建一个列表,其中包含我过去发送过电子邮件的所有电子邮件地址,并将它们转储到Excel中.
我应该以某种方式通过COM连接Outlook吗?
谢谢.
我正在尝试找到复制此C功能的通用方法:
int main(int argc, char** argv){
fprintf(2,"%s: error you did something wrong.\n", argv[0]);
return 1;
}
Run Code Online (Sandbox Code Playgroud)
在java中.到目前为止,唯一的方法是将其硬编码到应用程序中,这很难看.我想得到类似的东西:
someObj.getClass().getSimpleName();
Run Code Online (Sandbox Code Playgroud)
在我的静态主体内,没有回到我自己的课堂.
这甚至可能吗?
我寻找一个好时光并没有把这个变成一个.
重复的问题,请参阅Java中的$ 0(程序名)?发现主要课程?回答
这是一个非常简短的问题。我进行了搜索,似乎找不到显示小型转储文件中存在哪些选项的 Windbg 命令。
此外,我想返回将.dump生成相同类型的小型转储的命令的等效参数,例如.dump /ma。
我使用向导在VS2008中创建了一个C++静态库项目,如下所示:
-Win32应用程序
- 在"应用程序设置"中,选择"静态库"
- 未选中 "预编译标题"
完成后,我发现在"项目属性 - >配置属性"下,没有"C/C++"部分.我尝试创建另一个静态库项目,选中 "Precompiled Header"选项并显示"C/C++"部分.
有人可以告诉我为什么吗?这是否意味着如果不使用"预编译头","C/C++"部分中的所有其他设置,如"附加包含目录",根本没用?非常感谢你.
c++ ×2
args ×1
command-line ×1
common-lisp ×1
f# ×1
java ×1
lisp ×1
minidump ×1
outlook ×1
templates ×1
trace ×1
type-traits ×1
winapi ×1
windbg ×1
wizard ×1