问题列表 - 第37372页

在使用模板时得到"不能出现在常量表达式中"

template < int >  
  class CAT  
  {};  

  int main()  
  {  
     int i=10;  
     CAT<(const int)i> cat;  
     return 0; //here I got error: ‘i’ cannot appear in a constant-expression  
  }  
Run Code Online (Sandbox Code Playgroud)

甚至

   int i=10;  
   const int j=i;  
   CAT<j> cat; //this still can not work
Run Code Online (Sandbox Code Playgroud)

但我已将我转换为const int,为什么编译器仍报告错误?
我的平台是ubuntu,gcc版本4.4.3

谢谢,

==============

谢谢你的输入,但在某些情况下,我需要一个非const变量,

例如:

  //alloperations.h   
  enum OPERATIONS  
  {  
       GETPAGE_FROM_WEBSITE1,  
       GETPAGE_FROM_WEBSITE2,  
       ....  
  };  


  template< OPERATIONS op >  
  class CHandlerPara  
  {  
       static string parameters1;         
       static string parameters2;         
       ....  
       static void resultHandler();  
  };     


  //for different operations,we need a different …
Run Code Online (Sandbox Code Playgroud)

c++ parameters templates non-type

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

如何从界面中删除不需要的功能

我有一个接口类MyFunction.此类中有三个函数,具有以下签名:

virtual bool Eval(int& iReturnVal, size_t szArgumentCount, list<Param> lParameterList) = 0;
virtual bool Eval(double& dReturnVal, size_t szArgumentCount, list<Param> lParameterList) = 0;
virtual bool Eval(char*& zReturnVal, size_t szArgumentCount, list<Param> lParameterList) = 0;
Run Code Online (Sandbox Code Playgroud)

现在,任何实现MyFunction只需要实现其中一个函数,具体取决于它需要返回什么类型的值.但即使其他两个函数是这样的,我也必须实现所有3个函数:

virtual bool Eval(double& dReturnVal, size_t szArgumentCount, list<Param> lParameterList){return false;}
Run Code Online (Sandbox Code Playgroud)

哪个看起来不那么好.或者,我可以在界面中声明这样的所有三个函数:

virtual bool Eval(int& iReturnVal, size_t szArgumentCount, list<Param> lParameterList){return false;}
virtual bool Eval(double& dReturnVal, size_t szArgumentCount, list<Param> lParameterList){return false;}
virtual bool Eval(char*& zReturnVal, size_t szArgumentCount, list<Param> lParameterList){return false;}
Run Code Online (Sandbox Code Playgroud)

这看起来也很难看.这两个中不那么丑陋的是什么?或者有更好的方法吗?

编辑:

关于D Krueger的方法:

#include <iostream>

using …
Run Code Online (Sandbox Code Playgroud)

c++ coding-style

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

正则表达式删除CSS注释

我想在php中编写正则表达式,以匹配双引号和单引号中的行.其实我正在编写用于删除css文件中的注释行的代码.

喜欢:

"/* I don't want to remove this line */"
Run Code Online (Sandbox Code Playgroud)

/* I want to remove this line */
Run Code Online (Sandbox Code Playgroud)

例如:

- valid code /* comment */ next valid code "/* not a comment */" /* this is comment */
Run Code Online (Sandbox Code Playgroud)

预期结果:

- valid code next valid code "/* not a comment */"
Run Code Online (Sandbox Code Playgroud)

请任何人根据我的要求在PHP中给我一个正则表达式.

php regex

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

在mergeChangesFromContextDidSaveNotification之后未触发的NSFetchedResultsController委托方法

正在浏览与此类似的帖子,但没有人回答我的问题.

与CoreDataBooks一样,我使用单独的MOC来添加和编辑项目并观察正确的通知,如下所示:

- (void)addControllerContextDidSave:(NSNotification*)saveNotification {

  NSManagedObjectContext *context = [self.fetchedResultsController managedObjectContext];
  // Merging changes causes the fetched results controller to update its results
  [context mergeChangesFromContextDidSaveNotification:saveNotification];
  NSLog(@"merging changes in rootview");
}
Run Code Online (Sandbox Code Playgroud)

当我进行保存时,它被正确观察到了.调试通知显示正确的上下文,调试上下文显示刚添加的项目.日志消息也打印得很好.但没有任何反应.NSFetchedResultsController的委托方法都没有触发,也没有更新表视图.

我没有尝试缓存或清除它.我试过reloadDatatableView,但没有.当我退出应用程序并重新启动时,它显示正常.

更新:通知确实包含正确的上下文object,其中包含正确的项目,但userInfo哈希中没有任何内容:

userInfo = {
  inserted = "{(\n)}";
  updated = "{(\n)}";
}
Run Code Online (Sandbox Code Playgroud)

因此,看起来通知中没有任何更改,尽管具有更改项目的正确上下文....嗯.

iphone core-data nsfetchedresultscontroller

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

需要帮助我的COBOL作业

很抱歉打扰你,但我被困在COBOL的作业上.我做了两次尝试,但都没有按预期工作.

下面显示了两次尝试及其输出,然后是最终结果.我感谢你们的帮助.

第一次尝试:

IDENTIFICATION DIVISION.
PROGRAM-ID. MAIL-LABEL.
*
******************************************************************
* This program prints duplicate side by side mailing labels.
******************************************************************
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.

SELECT LABEL-FILE-IN
ASSIGN TO 'MAIL-LABEL.SEQ'
ORGANIZATION IS LINE SEQUENTIAL.

SELECT LABEL-FILE-OUT
ASSIGN TO 'MAIL-LABEL.RPT'
ORGANIZATION IS LINE SEQUENTIAL.

DATA DIVISION.
FILE SECTION.

FD LABEL-FILE-IN.
01 LABEL-RECORD-IN.
05 NAME-IN PIC X(20).
05 ADDRESS-IN PIC X(20).
05 CITY-STATE-ZIP-IN PIC X(20).

FD LABEL-FILE-OUT.
01 LABEL-RECORD-OUT.
05 LEFT-LABEL-OUT PIC X(20).
05 BLANK-OUT PIC X(15).
05 RIGHT-LABEL-OUT PIC X(20).
05 …
Run Code Online (Sandbox Code Playgroud)

cobol

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

哪里可以获得"svn status --xml"的所有可能的标签/值?

svn status --xml打印所有文件状态,它比解析svn status输出更有用.

  1. 是否有XML文件中所有可能的标签/部分及其值的列表?我可以阅读SVN源,但它耗时且方法很脏.

  2. 是否有可能找到从svn status --xml值到svn status状态字符的干净地图?

xml svn status

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

如何在Eclipse IDE中运行Simple C程序

我已经下载了Eclipse C/C++ IDE.我需要在这里运行一个简单的c程序(打印欢迎).

在尝试运行该程序时,它会弹出一条错误消息 "Launch failed: Binary not found" .

需要我安装任何编译器包.?

请帮我这样做.

c eclipse windows-7

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

what is serialization all about?

Where exactly does serialization comes into the picture? I read about serializtion on the 'net and I have come to know that

它是一个接口,如果在类中实现,意味着它可以被不同的序列化器自动序列化和反序列化.

给我一个很好的理由,为什么以及什么时候需要序列化一个类?假设一旦序列化,究竟发生了什么?

c# serialization

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

.Net是否有任何控制台"图形"库?

我的基本目标是编写一个关于Kroz王国的.NET翻版.对于那些不熟悉游戏的人:

http://www.indiefaqs.com/index.php/Kingdom_of_Kroz

http://www.youtube.com/watch?v=cHwlNAFXpIw

最初它应该是一个快速分心的项目,让我从最近占据我大部分时间的所有通用企业WCF/WF/LINQ2SQL /等工作项目中休息一下.虽然我的努力的结果是可玩的,它看起来像绝对的屁股(即使对于基于控制台的游戏),因为我重绘每个帧中的所有内容的方式.

我知道一些替代方法,但在我做过的简短测试中,他们仍然没有提供显着的性能或美学效益.如果我可以提供帮助,我不想诉诸"模拟"控制台的库.我更喜欢使用适当的Win32控制台API,但如果我可以帮助它,不要直接使用它.请记住,这是一个明显的利基用例,对于这种情况,"通常"接受的最佳方法是什么?是否应该注意特别优化的控制台"绘图"技术?我不介意在PInvoke的海洋游泳和编组,只要它仍然以快速,响应和高效的控制台UI结束.

.net c# vb.net console graphics

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

我需要在CFont上调用DeleteObject吗

我想知道,在下面的情况下我需要调用DeleteObject吗?

CFont* oldFont = label.GetFont();
LOGFONT oldLogFont;
oldFont->GetLogFont(&oldLogFont);
oldLogFont.lfWeight = FW_BOLD;
CFont newFont;
newFont.CreateFontIndirectW(&oldLogFont);
label.SetFont(&newFont, true);
// Do I need to call oldFont->DeleteObject() or newFont->DeleteObject()?
Run Code Online (Sandbox Code Playgroud)

谢谢。

mfc

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