小编Ale*_*lex的帖子

C++ getters/setters编码风格

我已经在C#中编程了一段时间,现在我想要提高我的C++技能.

上课:

class Foo
{
    const std::string& name_;
    ...
};
Run Code Online (Sandbox Code Playgroud)

什么是最好的方法(我只想允许对name_字段的读访问):

  • 使用getter方法: inline const std::string& name() const { return name_; }
  • 让这个领域公开,因为它是一个常数

谢谢.

c++ coding-style getter-setter

65
推荐指数
5
解决办法
17万
查看次数

无法点击Firefox上的flash中的允许按钮

我有一个webapp在iframe中嵌入了一些flash内容.闪存部分正在请求访问网络摄像头.在firefox/mac os上,用户无法单击允许按钮.这只发生在嵌入swf文件的页面加载到iframe中时,单独使用时它可以正常工作.还有其他人遇到过类似的问题吗?你知道任何变通方法吗?

编辑:为了将来的参考:我们通过JS定位一些东西,我们使用"半像素"(例如20.5px)的位置.一旦我们确定一切正常.

flash firefox

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

初始类型系统理论的书籍

我想研究类型系统理论.我没有类型系统理论的任何背景,所以我或多或少是一个初学者(除了我读过的关于这个主题的文章,我发现由于使用的符号而令人生畏).什么是可以让我入门的好书?我正在看Benjamin C. Pierce的"类型和编程语言"一书.这适合初学者还是太难?如果我开始学习还能用什么其他东西太难了?

谢谢,

-

干杯,亚历克斯

computer-science types type-theory

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

OCaml的州monad

我试图在OCaml中实现状态monad(作为练习).我的实现看起来像这样:

module type MONAD_BUILDER =
sig
  type 'a t
  val return : 'a -> 'a t
  val bind : 'a t -> ('a -> 'b t) -> 'b t
end;;

module MonadBuilder = functor (M: MONAD_BUILDER) ->
struct
  let ( >>= ) = M.bind
  let return = M.return
end;;

module StateM = 
struct
  type 'a state = { state: 's . 's -> ('a * 's) }
  type 'a t = 'a state
  let return x = { state = …
Run Code Online (Sandbox Code Playgroud)

polymorphism monads ocaml existential-type state-monad

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

DynamicMethod具有泛型类型参数

是否可以使用泛型类型参数定义DynamicMethod?MethodBuilder类具有DefineGenericParameters方法.DynamicMethod有对应的吗?例如,是否可以使用DynamicMethod创建具有签名的方法?

void T Foo<T>(T a1, int a2)
Run Code Online (Sandbox Code Playgroud)

c# reflection reflection.emit dynamicmethod

8
推荐指数
2
解决办法
1367
查看次数

C++朋友类

我意识到在C++中有很多关于朋友类的问题.不过,我的问题与具体情况有关.鉴于以下代码,以这种方式使用朋友是否合适?

class Software
{
    friend class SoftwareProducer;

    SoftwareProducer* m_producer;
    int m_key;
    // Only producers can produce software
    Software(SoftwareProducer* producer) : m_producer(producer) { }

public:
    void buy()
    {
        m_key = m_producer->next_key();
    }
};

class SoftwareProducer
{
    friend class Software;

public:
    Software* produce()
    {
        return new Software(this);
    }

private:
    // Only software from this producer can get a valid key for registration
    int next_key()
    {
        return ...;
    }
};
Run Code Online (Sandbox Code Playgroud)

谢谢,

最好的祝福,

c++ coding-style

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

Python中的跟踪系统和实时统计分析

这个问题与一个较老的问题有关:MySQL跟踪系统.简而言之:我必须使用Python实现一个具有高负载的跟踪系统.对于数据库部分,我已经选择了mongoDB(这听起来像是这项工作的正确工具).开发语言将是Python.

我在考虑在nginx后面使用CherryPy应用程序的几个实例.这背后的原因是我不想自己处理所有wsgi部分,但另一方面我不需要一个完整的Web框架,因为应用程序将很简单,并且不需要ORM.

我的问题是:

  • 我应该使用CherryPy内置服务器还是应该将Apache与modwsgi(或其他服务器)一起使用?

  • 这听起来像一个合理的方法(nginx,mongoDB)?如果不是你会推荐什么?

先感谢您.

python mod-wsgi nginx cherrypy mongodb

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

在OS X上保留内存

什么相当于VirtualAllocOS X中的Windows ?也就是说,如何保留一个连续的地址空间而不实际提交它,然后再提交它的块?

谢谢,

亚历克斯

c macos memory-management

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

F# 返回类型强制

在 F# 中,我有一个返回 System.Linq.Expression 实例的函数:

and System.Object with
  member this.ToExpression() = 
    match this with
    | :? System.Int32 -> Expression.Constant(this) :> Expression
    | :? System.Boolean -> Expression.Constant(this) :> Expression
    | :? Tml.Runtime.Seq as s -> s.ToExpression()
    | _ -> failwith "bad expression"
Run Code Online (Sandbox Code Playgroud)

如果我省略对返回值的类型强制,F# 会将函数的返回类型推断为 ConstantExpression。我的第一个想法是将返回类型明确标记为:#Expression,但这不起作用。有没有更优雅的方法来做到这一点,而不涉及手动将返回类型转换为最通用的类​​型?

谢谢。

编辑:感谢大家的回答。我将采用显式返回类型 + 向上转换的场景。

f# types type-systems coercion

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