问题列表 - 第32386页

std :: map和-fno-implicit-templates

我试图用g ++ 4.4编译并链接一个使用STL的简单程序.我正在尝试使用-fno-implicit-templates来完成它,因此必须显式实例化所有模板.

我不明白为什么这段代码有效:

#include <map>
//template class std::map<char,char>;
template class std::_Rb_tree<char, std::pair <char const, char>,
               std::_Select1st<std::pair<char const, char> >, 
               std::less<char>, std::allocator<std::pair<char const, char> > >;

int main() {
   std::map <char,char> table;
return 0;
}
Run Code Online (Sandbox Code Playgroud)

我希望这个程序需要行:template class std::map<char,char>;但是该行不会使程序链接.这std::_Rb_tree line是必要的.为什么?

在此先感谢,任何提示将不胜感激.

c++ stl instantiation stdmap

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

我错过了一些关于文档数据库的内容吗?

我一直在关注NoSql运动的兴起以及随之而来的mongodb,ravendb等文档数据库的普及.虽然我喜欢这些有很多相关的东西,但我觉得我并不理解一些重要的东西.

假设您正在实现商店应用程序,并且您希望存储在数据库产品中,所有这些产品都有一个唯一的类别.在关系数据库中,这可以通过具有两个表,产品和类别表来完成,并且产品表将具有一个字段(可能称为"category_id"),该字段将引用具有正确类别条目的类别表中的行.这有几个好处,包括不重复数据.

这也意味着,如果拼错了类别名称,例如,您可以更新类别表,然后将其修复,因为这是唯一存在值的地方.

但是,在文档数据库中,这不是它的工作原理.你完全非规范化,意味着在"产品"文档中,你实际上会有一个保存实际类别字符串的值,导致大量重复数据,并且错误更难以纠正.更多地考虑这个问题,是否也意味着运行诸如"给我这个类别的所有产品"之类的查询可能导致没有完整性的结果.

当然,解决这个问题的方法是在文档数据库中重新实现整个"category_id"事物,但是当我想到这一点时,我意识到我应该继续使用关系数据库而不是重新实现它们.

这让我相信我错过了关于文档数据库的一些关键点,这些关键点导致我走上了这条不正确的道路.所以我想把它放到堆栈溢出,我错过了什么?

nosql document-database

29
推荐指数
2
解决办法
2493
查看次数

JList随机抛出ArrayIndexOutOfBoundsExceptions

我正在尝试异步向JList添加项目,但我经常从另一个线程获取异常,例如:

Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 8
Run Code Online (Sandbox Code Playgroud)

有谁知道如何解决这一问题?

(编辑:我回答了这个问题,因为它一直在困扰我,并且没有明确的搜索引擎友好的方式来查找此信息.)

java swing

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

Perl:使用s /(replace)并返回新字符串

在Perl中,运算符s/用于替换字符串的一部分.现在s/将改变其参数(字符串).然而,我想要替换打印它的部分字符串,如

print "bla: ", replace("a","b",$myvar),"\n";
Run Code Online (Sandbox Code Playgroud)

replace在Perl中有这样的功能,或者其他一些方法吗?s/在这种情况下不会直接工作,我想避免使用辅助变量.有没有办法在线进行此操作?

regex perl replace

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

如何将System.Byte []转换为Image?(C#窗口形式)

我有一个PictureBox控件我想在其中显示图像.我使用以下数据类型将我的图像保存在MS Access数据库中:OLE Object.我发现很难再显示它.请看一下我的代码,你们可以为它设计一个解决方案.我得到了这个Exception:

Unable to cast object of type 'System.Byte[]' to type 'System.Drawing.Image'.
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

OleDbCommand cmd = new OleDbCommand("SELECT IMAGE FROM IMAGES WHERE ID = 1", myConn));
            cmd.CommandType = CommandType.Text;
            OleDbDataAdapter da = new OleDbDataAdapter(cmd);
            DataTable dt = new DataTable("dt");
            da.Fill(dt);

            if (dt != null)
            {              
                pictureBox1.Image = (Image)dt.Rows[0]["IMAGE"];
            }
Run Code Online (Sandbox Code Playgroud)

c#

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

函数和R中的try()

仍在努力与R,尤其是错误处理:

如果我使用:

result <- try(sqlSave(ch,df,tablename="tblTest"))
Run Code Online (Sandbox Code Playgroud)

我可以用:

if (class(result) != "try-error")
Run Code Online (Sandbox Code Playgroud)

检查是否出了问题.没问题.

但是如果我try与一个函数结合使用它并不像我预期的那样工作:

 result <- try(ch<-odbcConnect("TEST"))
Run Code Online (Sandbox Code Playgroud)

给出"-1"表示result和"整数"表示class(result)

所以我应该使用

ch<-odbcConnect("TEST")
if (ch != -1)
Run Code Online (Sandbox Code Playgroud)

geterrmessage()用于错误消息?

error-handling r

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

使用Qt/qmake时如何将生成的文件(例如目标文件)放入单独的文件夹中?

我有一个使用qmake的Qt项目.为了提高清晰度和可读性,我想保留

  • 源文件
  • 构建系统
  • 生成的文件(例如目标文件)

分离.

所以我的第一步是将源文件放入src/sub目录:

myproject/
    myproject.pro
    src/
        main.cpp
        MainWindow.ui
        ...
Run Code Online (Sandbox Code Playgroud)

这样我就将源文件与构建系统(*.pro)分开了.然而,当我然后运行qmake其次make,将所生成的文件(目标文件等)被放置到主项目文件夹中:

myproject/
    myproject.pro
    Makefile
    main.o
    ui_MainWindow.h
    ...
    src/
        main.cpp
        MainWindow.ui
        ...
Run Code Online (Sandbox Code Playgroud)

好吧,至少他们没有被放入src/文件夹,但我如何指定他们被放入另一个子文件夹,如build/

myproject/
    myproject.pro
    Makefile
    build/
        main.o
        ui_MainWindow.h
        ...
    src/
        main.cpp
        MainWindow.ui
        ...
Run Code Online (Sandbox Code Playgroud)

(顺便说一下,我不关心目标二进制文件myproject放在哪里,但我想它应该直接放在项目文件夹中而不是放入build/.)

qt qmake object-files

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

为什么scanf()需要&运营商(地址)在某些情况下,而不是其他情况?

为什么我们需要将一个&运算符scanf()用于存储整数数组中的值,而不是将字符串存储在char数组中?

int a[5];
for(i=0;i<5;i++)
scanf("%d",&a[i]);
Run Code Online (Sandbox Code Playgroud)

char s[5]; scanf("%s",s);
Run Code Online (Sandbox Code Playgroud)

我们需要传入存储值的地址,因为数组是指向第一个元素的指针.所以在int/float数组的情况下,它基本上就意味着(a+i).

但是字符串的情况怎么样?

c arrays scanf ampersand

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

如何在查询中处理多个ID,因为我在下面的代码中有问题

<head>
  <script type="text/javascript" src="jquery.js"></script>
  <script type="text/javascript">
  $(document).ready(function(){
    $("input").click(
      function(){
        alert(this.id);
        $('#comments'+this.id).show();
    }
  );
});

</script>
<style type="text/css">
 .comments{
  width:500px;
  height:350px;
  background:#06F;
  display:none;
}
</style>
</head>
<body>
  <input type="text" id="1"></input>
  <input type="text" class="title" id="2"></input>
  <input type="text" class="title" id="1"></input>
 <div id="comments1" class="comments">box 1</div>
  <div id="comments2" class="comments">box 2</div>
 <div id="comments1" class="comments">box 3</div>
</body>
Run Code Online (Sandbox Code Playgroud)

javascript

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

XSL选择所有节点,而不是另一个节点的节点

这是我的xml

<element1> <subel1/> </element1> <element2> <subel2/> </element2> <element3> <subel3/> </element3> <criteria> <subel3/> </criteria>
Run Code Online (Sandbox Code Playgroud)

我如何选择xsl不在标准子节点的所有节点?像这些

 <subel1/> <subel2/>
Run Code Online (Sandbox Code Playgroud)

这是怎么做到的?

如果xml格式为:

<element1> 
<el> subel1 </el>
</element1>
 <element2> 
<el> subel2 
</el> 
</element2> 
<element3> 
<el> subel3 </el> 
</element3> 
<criteria> 
<subel3/> 
</criteria>
Run Code Online (Sandbox Code Playgroud)

xml xslt xpath

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