问题列表 - 第22271页

将方法的签名作为模板参数传递给类

我想在我的项目中为数据处理类创建一个模板接口.

我可以这样写:

template <class T>
class DataHandler
{
    public:
        void Process(const& T) = 0;
};
Run Code Online (Sandbox Code Playgroud)

然后,假设我以这种方式定义一个类:

class MyClass: public DataHandler<int> 
{
    void Process(const int&) { /* Bla-bla */ }
}
Run Code Online (Sandbox Code Playgroud)

现在,来问题,我可以以某种方式定义我的模板接口,作为参数,它不仅会收到类型T,而且会收到Process()函数的整个签名.

我想用这种方式工作:

class MyClass: public DataHandler<void (int&)> 
{
    void Process(const int&) { /* Bla-bla */ }
}
Run Code Online (Sandbox Code Playgroud)

可能吗?我知道,例如,boost :: signal以这种方式接收模板参数,但是,如果我理解正确的话,他们会在那里使用大量的黑魔法.

c++ templates

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

如何在vim中自动格式化/缩进C代码?

当我从另一个文件复制代码时,格式化混乱,如下所示:

fun()
{
for(...)
{
for(...)
{
if(...)
{
}
}
}
}
Run Code Online (Sandbox Code Playgroud)

如何在vim中自动格式化此代码?

c vim code-formatting

239
推荐指数
8
解决办法
15万
查看次数

如何使Visual Studio在C#代码中自动包含大括号?

之后namespace,class,struct,enum,for,foreach,while,switch,do,using,unchecked和在方法的开始,不应该的Visual Studio自动包含大括号?如何激活此功能?

c# syntax visual-studio-2008 visual-studio

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

查找Type of Type参数

考虑以下:

private T getValue<T>(String attr)
{ ... }
Run Code Online (Sandbox Code Playgroud)

如何查看Type是什么?

我在考虑:

if("" is T) // String
if(1 is T) // Int32
Run Code Online (Sandbox Code Playgroud)

有没有更好的办法?

c# .net-2.0 c#-2.0

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

Ruby:如何确定正在读取的文件是二进制还是文本

我正在用Ruby编写一个程序,它将在目录中的文本文件中搜索字符串 - 类似于Grep.

我不希望它尝试搜索二进制文件,但我无法在Ruby中找到确定文件是二进制文件还是文本的方法.

该程序需要在Windows和Linux上运行.

如果有人能指出我正确的方向,这将是伟大的.

谢谢,

Xanthalas

ruby file-io

7
推荐指数
2
解决办法
4581
查看次数

Linq2Sql与存储过程

如果这是一个重复的问题,请道歉,但在执行Linq2Sql中的SQL语句与执行存储过程之间是否存在真正的区别?

有什么好处?(如果有的话)

.net sql linq-to-sql

3
推荐指数
2
解决办法
398
查看次数

如何模拟杀戮活动以节省内存?

Android医生说:

"当系统而不是用户关闭活动以节省内存时......"

但是如何模拟这种情况?我想调试onRestoreInstanceState(Bundle)方法,但不知道如何.

android activity-lifecycle onrestoreinstancestate

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

Sitecore:loginPage?

我试图在web.config中的Sitecore站点上设置loginPage值.loginPage中引用的文件是Sitecore项,因此它不是服务器上的psycical页面.无论我如何引用它,它都行不通.我得到2个错误之一(取决于我如何refrecen到文件);

无法找到该资源.执行/ sitecore/login的子请求时出错.(我在web.config中引用的路径)

有任何想法吗?

sitecore

7
推荐指数
2
解决办法
5640
查看次数

用于高级图表的JavaScript图表库

问题背景:

用于分析糖尿病患者的血糖读数的软件通常具有称为"每日模态"图表的东西.

此图表类型是一个折线图,显示X轴上的时间,Y轴上的血糖读数,并在指定的日期范围内显示.例如,我可以看到我女儿读数的图表,例如,上周 - 每天的读数叠加在单个图表上(这是关键 - 在同一时间叠加每一天的血糖读数)基于日期的图表).这是按时段查看趋势的最佳方式.此外,如果还有一条趋势线显示在给定时间段内每天的平均值,甚至更好.

问题:

有谁知道JavaScript图表库可以让我建立这样的图表?我想知道Flot是否这样做,或者谷歌可视化API,例如?

提前致谢

javascript charts

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

当你真的搞砸了分布式系统的设计时该怎么办?

相关问题: 打破集中式数据库的最有效方法是什么?

我将尝试使这个问题相当普遍,这将有利于其他人.

大约3年前,我实施了一个集成的CRM和网站.因为我想给客户留下深刻的印象,所以我实现了我能想到的最便宜的架构,即在Web服务器上托管中央数据库和网站.我创建了一个桌面应用程序,它通过Web服务与Web服务器通信(该应用程序从其主办公室运行).

事后看来,这是相当愚蠢的,因为现在公司已经发展壮大,他们的互联网连接每个月变得越来越慢.现在,由于速度问题,桌面软件定期超时,客户有3个选项:

  1. 购买更快的互联网连接.
  2. 将数据库(和网站)移动到内部服务器.
  3. 重新设计架构,以便CRM和Web数据库是分开的.

第一种选择是"最简单",但肯定不是最便宜的长期选择.第二种选择; 如果我们将网站转移到内部托管,客户必须解决超载/差/离线互联网连接,断电等问题.最后的选择; 客户厌倦了为我重新设计和重新编码架构而付出了大量现金,我无法承担免费的费用(我需要吃饭).

有没有办法从你搞砸了分布式系统的设计那么糟糕的时候恢复,没有一个选项可以工作?或者是减少损失并从错误中吸取教训的情况?我觉得很难解决这个问题.

distributed-computing

12
推荐指数
2
解决办法
921
查看次数