小编Muk*_*pta的帖子

如何动态新的匿名类?

在C#3.0中,您可以使用以下语法创建匿名类

var o1 = new { Id = 1, Name = "Foo" };
Run Code Online (Sandbox Code Playgroud)

有没有办法动态地创建这些匿名类到变量?


例:

var o1 = new { Id = 1, Name = "Foo" };
var o2 = new { SQ = 2, Birth = DateTime.Now };
Run Code Online (Sandbox Code Playgroud)

动态创建示例:

var o1 = DynamicNewAnonymous(new NameValuePair("Id", 1), new NameValuePair("Name", "Foo"));
var o2 = DynamicNewAnonymous(new NameValuePair("SQ", 2), new NameValuePair("Birth", 
DateTime.Now));
Run Code Online (Sandbox Code Playgroud)

因为我需要这样做:

dynamic o1 = new ExpandObject(); 
o1."ID" = 1;    <--"ID" is dynamic name
o1."Name" = "Foo";  <--"Name" is dynamic name
Run Code Online (Sandbox Code Playgroud)

和Scene1:

void …
Run Code Online (Sandbox Code Playgroud)

c# anonymous-types c#-3.0

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

不要在可选的protobuf字段中设置默认值,以最大限度地减少通过线路发送的数据

我们是否应该在可选的protobuf字段中设置默认值以最小化通过线路发送的数据?

我想最小化通过线路发送的消息字节大小.为实现这一目标,我能想到的一个优化是:

if( message->my_optional_field() != value )
  message->set_my_optional_field(value);
Run Code Online (Sandbox Code Playgroud)

这可以防止has_my_optional_field()在预期值等于默认值时调用,从而防止该字段出现在序列化数组中.这是一个好习惯吗?protobuf能提供开箱即用的东西吗?

问题类似于has_field()方法如何与protobuf中的默认值相关联? 事实上,已经在一个评论中回答了已接受的答案.但是,随后的评论对此声称提出异议.

protocol-buffers

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

heroku db:migrate aborted

我是Ruby on Rails和heroku的新手.我按照视频教程中的步骤进行操作.我认为我没有做任何不同的事情.但是,我无法在heroku上运行rake db:migrate,而一切都在我的localhost上运行:3000还可以详细说明GEMFILE.lock和GEMFILE的功能.

$ heroku run rake db:migrate
Running `rake db:migrate` attached to terminal... up, run.9550
DEPRECATION WARNING: You have Rails 2.3-style plugins in vendor/plugins! Support for these plugins will be removed in Rails 4.0. Move them out and bundle them in your Gemfile, or fold them in to your app as lib/myplugin/* and config/initializers/myplugin.rb. See the release notes for more on this: http://weblog.rubyonrails.org/2012/1/4/rails-3-2-0-rc2-has-been-released. (called from <top (required)> at /app/Rakefile:7)
DEPRECATION WARNING: You have Rails 2.3-style plugins in vendor/plugins! …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails heroku heroku-toolbelt

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

如何在 postgresql 中获取正在运行的查询的执行计划?

我有一个未优化的查询,它在一天中的不同时间运行一系列不同的执行时间,从 1 分钟到 14 小时不等。数据库上的 CPU 利用率、内存和其他并发负载保持不变,会导致这种变化的原因是什么?请注意,自动真空过程会在午夜运行,而性能会在早上显着提高。我的断言是,由于表碎片、死元组和大量读取,同一表的统计信息发生变化,从而生成不同的执行计划。为了证明这个断言,我想获取当前正在运行的查询的查询计划。请注意,我不可能EXPLAIN在执行前简单地查询。

postgresql

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

完全断开二分图

我有一个断开的二分无向图.我想完全断开图表.只有我可以执行的操作是删除节点.删除节点将自动删除其边缘.任务是最小化要删除的节点数.图中的每个节点最多有4个边.

通过完全断开图形,我的意思是不应该通过链接连接两个节点.基本上是一个空边集.

algorithm graph-theory graph bipartite graph-algorithm

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

backend_xmin 和 backend_xid 在 pg_stat_activity 中代表什么?

Postgresql 公开视图pg_stat_activity。根据文档

backend_xid 表示此后端的顶级事务标识符(如果有)。

backend_xmin 表示当前后端的 xmin 范围。

让我们举个例子:

BEGIN;
# INSERT Statement1
# INSERT Statement2
COMMIT;
Run Code Online (Sandbox Code Playgroud)

backend_xid表示分配给整个事务的事务标识符,而如果pg_stat_activity在其行中显示语句 2,则backend_xmin对应xmin于语句 2。

理解正确吗?

postgresql

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

运算符重载与函数调用的性能

让我们假设我创建自己的vector类,如下所示:

<template class T>
class Vector {
private:
  void** ptr;
  // More functions implementing the custom vector
public:
  T& operator[](int iIndex) const {
    return *(T*)ptr[iIndex];
  }
  T& Item(int iIndex) const {
    return *(T*)ptr[iIndex];
  }
}
Run Code Online (Sandbox Code Playgroud)

比方说,我有一个Vector<someClass> v.严格地说,性能方面的哪一个更快地访问向量的元素.

  1. v.Item(i)
  2. v[i]

c++ operator-overloading

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