小编Rei*_*ica的帖子

我什么时候应该使用C++而不是SQL?

我是一名C++程序员偶尔使用MySQL来处理数据库,但我的SQL知识相当有限.但我肯定愿意改变这一点.

目前我正在尝试对数据库中的数据进行分析(!),仅使用SQL查询.但我即将放弃,而是将数据导入C++并使用C++代码进行分析.

我和我的同事讨论过这个问题,他们也让我使用C++,说SQL不是用于复杂分析,而是主要用于导入(从现有表)和导出(到新表)数据,还有更多例如将数据合并到 - 例如 - 连接表.

有人可以帮我划清界限吗?所以我知道何时切换到C++?当然,性能也是一个问题.

什么迹象表明事情在SQL中变得复杂?或者我可能只是采用错误的方法来设计查询.那我在哪里可以找到教程,书籍......采取更好的方法?

我希望这不是太模糊.我真的有点失落.

c++ mysql sql data-analysis

24
推荐指数
3
解决办法
6746
查看次数

java Singleton - 通过反射防止多次创建

我有一个像这样的单身人士.

public class BookingFactory {

    private final static BookingFactory instance;

    static {
        instance = new BookingFactory();
    }

    public static BookingFactory getInstance() {
        return instance;
    }

    private BookingFactory() {
        System.out.println("Object is created.");
    }
}

public class Test  {
    BookingFactory instance = BookingFactory.getInstance();
    instance = BookingFactory.getInstance();

    Class<?> clazz = Class.forName("com.test.BookingFactory");

    Constructor pvtConstructor = clazz.getDeclaredConstructors()[0];

    // Set its access control
    pvtConstructor.setAccessible(true);

    // Invoke Private Constructor
    BookingFactory notSingleton = (BookingFactory) pvtConstructor.newInstance(null);
}
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我看到了多条打印输出消息.有没有办法阻止这个单例从这个反射中被多次实例化?

谢谢.

java singleton

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

按字母顺序列出字符串数组

我有一个程序,用户输入一个名称列表.我有一个开关案例转到一个函数,我希望按字母顺序打印名称.

public static void orderedGuests(String[] hotel)
{
  //??
}
Run Code Online (Sandbox Code Playgroud)

我试过了两个

Arrays.sort(hotel);
System.out.println(Arrays.toString(hotel));
Run Code Online (Sandbox Code Playgroud)

java.util.Collections.sort(hotel);
Run Code Online (Sandbox Code Playgroud)

java arrays function case

23
推荐指数
3
解决办法
18万
查看次数

MySQL的创建索引和alter add index有什么区别?

我有一个表"数据"与列id(varchar),文本(varchar),日期(日期).在mysql上创建索引,我使用的是heidiSQL.

当我右键单击该列并选择创建新索引(键)时,代码显示它正在使用 alter table data add index 'index1' ('id,date(10)')

这和之间有什么区别? create index index1 on data ('id,date(10)')

mysql indexing

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

为什么标准字符串函数比我的自定义字符串函数更快?

我决定找到2个功能的速度:

  • strcmp - string.h中定义的标准比较函数
  • xstrcmp-一个具有相同参数并且相同的函数,就像我创建它一样.

这是我的xstrcmp函数:

int xstrlen(char *str)
{
    int i;
    for(i=0;;i++)
    {
        if(str[i]=='\0')
            break;
    }
    return i;
}

int xstrcmp(char *str1, char *str2)
{
    int i, k;
    if(xstrlen(str1)!=xstrlen(str2))
        return -1;
    k=xstrlen(str1)-1;
    for(i=0;i<=k;i++)
    {
        if(str1[i]!=str2[i])
            return -1;
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我不想依赖strlen,因为我想要用户定义的所有内容.

所以,我找到了结果.strcmp每毫秒进行364次比较,而我的xstrcmp每毫秒只做20次比较(至少在我的电脑上!)

任何人都可以告诉为什么会这样吗?xstrcmp函数如何使自己如此之快?

c c++ performance compare strcmp

22
推荐指数
3
解决办法
3341
查看次数

如何比较JUnit测试用例中的文件?

我想在我正在研究的一个小项目上实现JUnit,因为我想了解一下它.

我读过的教程都引用了具有特定输出的方法.

在我的情况下,我的输出是文件,我该怎么做?任何简单的例子?任何可以帮助我的方法?

这些文件是由void私有方法构建的原始文本文件.

java junit unit-testing text-files

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

为什么要使用`return x == 5?true:false;`?

我看不出这种编码实践的优势.我现在正在使用的项目充满了这些陈述,所以这不是一个错误.

另一个例子:

return getNumberOfBooks() > 5 ? true : false;
Run Code Online (Sandbox Code Playgroud)

而另一个:

return isRed() ? true : false;
Run Code Online (Sandbox Code Playgroud)

java boolean

20
推荐指数
2
解决办法
5960
查看次数

如何删除C预处理器默认添加到输出顶部的行?

我正在尝试在非C代码上使用C预处理器,除了在顶部创建这样的行之外它工作正常:

# 1 "test.java"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "test.java"
Run Code Online (Sandbox Code Playgroud)

问题是这些行在Java中无效.有没有办法让预处理器不写这些东西?我宁愿不必通过别的方式来运行它,每次只删除前4行.

c-preprocessor

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

Microsoft可以将三值字段存储在一个位中吗?

我完全不了解SQL /数据库,但我和一位朋友聊天,他做了很多关于某些数据库使用"布尔"字段的数据库工作,除了true和false之外,该字段可以取值NULL.

关于这一点,他按照以下方式发表评论:"对于微软来说,他们从未将这种字段称为布尔值,他们只是稍微调用它.如果你有8个或更少的位字段,它就是一个真正的位置.在记录中,它只需要一个字节来存储它们."

当然,这对我来说似乎是不可能的 - 如果该字段可以容纳三个值,那么您将不会将其中的八个放入一个字节中.我的朋友一致认为这看起来很奇怪,但是对无知的低级内部构件表示无知,并且据他所知,从SQL端看这些字段可以容纳三个值,并且确实需要一个字节的存储空间.我想我们中的一个人有一根电线交叉.谁能解释一下这里到底发生了什么?

database sql-server null boolean bit-fields

18
推荐指数
2
解决办法
4779
查看次数

如何计算CPU的理论峰值性能

这是我的cat /proc/cpuinfo输出:

...

processor           : 15
vendor_id           : GenuineIntel
cpu family          : 6
model               : 26
model name          : Intel(R) Xeon(R) CPU           E5520  @ 2.27GHz
stepping            : 5
cpu MHz             : 1600.000
cache size          : 8192 KB
physical id         : 1
siblings            : 8
core id             : 3
cpu cores           : 4
apicid              : 23
fpu                 : yes
fpu_exception       : yes
cpuid level         : 11
wp                  : yes
flags               : fpu vme de pse tsc msr pae mce …
Run Code Online (Sandbox Code Playgroud)

cpu performance cpu-speed

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