问题列表 - 第22267页

重载<<运算符和递归

我尝试了以下代码:

#include <iostream>
using std::cout;
using std::ostream;

class X
{
public:
    friend ostream& operator<<(ostream &os, const X& obj) 
    {
        cout << "hehe";          // comment this and infinite loop is gone
        return (os << obj);
    }
};

int main()
{
    X x;
    cout << x;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我编译并运行它时,它就像预期的那样; 无限循环.如果我删除cout友元函数中的语句,则不会发生递归.为什么会这样?

c++ recursion cout operator-overloading ostream

5
推荐指数
2
解决办法
5323
查看次数

如何使用正则表达式有效地向后搜索?

我正在搜索带有正则表达式的字符串数组,如下所示:

for (int j = line; j < lines.length; j++) {  
    if (lines[j] == null || lines[j].isEmpty()) {
        continue;
    }
    matcher = pattern.matcher(lines[j]);
    if (matcher.find(offset)) {
        offset = matcher.end();
        line = j;
        System.out.println("found \""+matcher.group()+"\" at line "+line+" ["+matcher.start()+","+offset+"]");
        return true;
    }
    offset = 0;
}
return false;
Run Code Online (Sandbox Code Playgroud)

请注意,在我上面的实现中,我保存lineoffset进行连续搜索.

无论如何,现在我想从[line,offset] 向后搜索.

我的问题:有没有办法有效地向后搜索正则表达式?如果没有,还有什么可以替代?

澄清:通过向后我的意思是找到以前的比赛.
例如,假设我正在搜索"dana"

"dana nama? dana kama! lama dana kama?" 
Run Code Online (Sandbox Code Playgroud)

并进入第二场比赛.如果我再做matcher.find()一次,我会向前搜索并获得第3场比赛.但是我想向后搜索并进入第一场比赛.
然后上面的代码应输出如下内容:

found "dana" at line …
Run Code Online (Sandbox Code Playgroud)

java regex

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

C#为继承的类中的父属性添加自定义属性

我在通用DataGrids中显示Business Object,我想通过自定义属性设置列标题,如:

class TestBo
 {
    [Header("NoDisp")]
    public int ID {get; set;}

    [Header("Object's name")]
    public String Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,这么好,但我还想通过继承将我的显示与我的数据分开:

class TestBO
{
   public int ID {get; set;}
   public String Name { get; set; }
}

class TestPresentationBO : TestBO
{
  //Question: how to simply set the Header attribute on the different properties?
}
Run Code Online (Sandbox Code Playgroud)

我通过Child构造函数中的SetCustomAttribute通过反射看到了一个解决方案,但它会很麻烦,所以这个问题有一个简单而优雅的技巧吗?

请阻止我打破数据/演示文稿的分离; o)

c# inheritance custom-attributes

7
推荐指数
3
解决办法
9970
查看次数

如何在C#visual studio中定义预处理器符号

对不起,如果我的术语错了.我#if TEST_APP在我的代码中写道.现在我想定义TEST_APP.我如何使用visual studios 2010进行设置?这是一个Windows窗体应用程序.

如果您能告诉我在winform项目和Web项目中设置的符号的名称,可以获得奖励

c# visual-studio-2010 visual-studio

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

如何从.jar文件中的源代码构建javadoc?

我必须从myCode.jar构建包含源和类文件的Javadoc .我可以不抽出罐子吗?

根据http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/javadoc.html#classpath,我应该能够这样做:C:\>javadoc -d docs -classpath myCode.jar net\kem\jmx\CacheManagerMBean.java 但是,我收到以下错误:

javadoc: error - File not found: "net\kem\jmx\CacheManagerMBean.java"
[search path for source files: [myCode.jar]]
[search path for class files: [C:\Program Files\Java\jdk1.5.0_17\jre\lib\rt.jar, C:\Program Files\Java\jdk1.5.0_17\jre\lib\jsse.jar,
 C:\Program Files\Java\jdk1.5.0_17\jre\lib\jce.jar, C:\Program Files\Java\jdk1.5.0_17\jre\lib\charsets.jar, C:\Program Files\Java\jd
k1.5.0_17\jre\lib\ext\dnsns.jar, C:\Program Files\Java\jdk1.5.0_17\jre\lib\ext\localedata.jar, C:\Program Files\Java\jdk1.5.0_17\jre
\lib\ext\sunjce_provider.jar, C:\Program Files\Java\jdk1.5.0_17\jre\lib\ext\sunpkcs11.jar, C:\Projects\RenderClusterController\WebCo
ntent\WEB-INF\lib\makoRenderJMX.jar]]
[done in 360 ms]
1 error
Run Code Online (Sandbox Code Playgroud)

看来,javadoc无法在jar中找到源文件.我相信有消息来源.

有什么建议?

documentation javadoc jar

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

赞同和反对名称对等和结构等价的论据是什么?

在语言设计界,曾经有过一场关于语言是否应该使用结构等价名称等同的长期争论.像ALGOL或ML或Modula-3这样的语言使用了结构等价,而......很多大多数编程语言都使用命名等价(包括Modula-2).

支持结构等价的典型论据是什么?反对它的典型论点是什么?支持名称对等的典型论据是什么?反对它的典型论点是什么?

computer-science language-design type-equivalence

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

脚本删除Git中所有二进制文件的历史记录,而不删除文件本身

假设我有一个巨大的git存储库,它有很多swfs和图像.我希望它们包含在托管的github存储库中,但它们不需要版本化,我不想将它们存储在其他地方.

每次我提交存储库时,我可以删除历史记录的最简单方法是什么?......最后,我拥有所有swfs和图像,但没有历史记录.

编辑:swf文件可能经常更改,因此我们可以指望每个提交有不同的版本.

git history github

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

为什么scanf在我预期的时候不会终止

如果我写一个C程序然后它不会自动退出,如果其他像....

#include<stdio.h>
int main ()
{
  int a, b, c, d;

  printf ("enter the value ");
  scanf("%d %d %d ",&a,&b,&c);
  d=a+b+c;
  if(d==180)
    printf("triangle is valid ");
  else 
    printf("triangle is invalid ");
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

然后它不会自行终止.....

任何人都可以帮助弄清楚这个问题是什么.....

c

0
推荐指数
2
解决办法
1623
查看次数

在SQLAlchemy中,是否可以在使用声明式样式时声明级联关系?

在SQLAlchemy中,我们可以像这样声明表及其关系:

user = Table(
    'users', metadata,
    Column('id', Integer, primary_key=True))

address = Table(
    'adresses', metadata,
    Column('id', Integer, primary_key=True),
    Column('user_id', Integer, ForeignKey('user.id')))

class User(object): pass

class Address(object): pass

session.mapper(User, user, properties=dict(
    'address' = relation(Address, backref='user', cascade="all")))
Run Code Online (Sandbox Code Playgroud)

(请注意上面一行中的级联关系.)

但是,我们也可以使用一种称为声明式样式的替代速记样式,在这种样式中我们可以用更少的代码行表达相同的东西,省略mapper()关系:

class User(Base):
    __tablename__ = 'users'
    id = Column(Integer, primary_key=True)

class Adress(Base):
    __tablename__ = 'adresses'
    id = Column(Integer, primary_key=True)
    user_id = Column(Integer, ForeignKey('user.id')))
Run Code Online (Sandbox Code Playgroud)

但是,如果我们使用这种声明式样式,是否有另一种方法来定义级联关系?

sqlalchemy

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

html文本框表单,不允许输入

是否有任何html表单中的类不允许您输入或更改该文本框中的值.但是你可以看到它的内容,例如下面的代码将允许你在mysql数据库中看到记录的内容.但我想要的是它不被编辑.我将在下面的代码中添加什么内容,以便用户不会编辑其内容:

   <tr>
<td><font size="3">Civil Status</td>
<td>:</td>
<td><input name="cs" type="text" maxlength="7" value="<?php echo $row["CSTAT"]; ?>"></td>
<td><font size="3">Age</td>
<td>:</td>
<td><input name="age" type="text" maxlength="3" value="<?php echo $row["AGE"]; ?>"></td>
<td><font size="3">Birthday</td>
<td>:</td>
<td><input name="bday" type="text" maxlength="12" value="<?php echo $row["BDAY"]; ?>"></td>

</tr>

<tr>
<td><font size="3">Address</td>
<td>:</td>
<td><input name="ad" type="text" maxlength="25" value="<?php echo $row["ADDRESS"]; ?>"></td>
<td><font size="3">Telephone #</td>
<td>:</td>
<td><input name="telnum" type="text" maxlength="11" value="<?php echo $row["TELNUM"]; ?>"></td>

<td width="23"><font size="3">Sex</td>
<td width="3">:</td>
<td width="174"><input name="sex" type="text"  maxlength="1" value="<?php echo $row["SEX"]; ?>"></td>
</tr>
Run Code Online (Sandbox Code Playgroud)

html

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