问题列表 - 第17874页

返回本地引用或指针时的行为差异

#include <iostream.h>
using namespace std;

class A {
public:
   virtual char* func()=0;
};

class B :public A {
public:
   void show() {
      char * a;
      a = func();
      cout << "The First Character of string is " << *a;
   }
   char * func();
};


char* B::func() {
   cout << "In B" << endl;
   char x[] = "String";
   return x;
}

int main() {
   B b;
   b.show();
}
Run Code Online (Sandbox Code Playgroud)

这个问题是我正在修复本地varibale指针/引用.目前它是char x[]="String",但是当我使用指针时char *x="String",结果是"S" 但当数组引用时输出为(i)

c++

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

如何备份和恢复SVN存储库?

我在Windows服务器中配置了一个Subversion存储库,还有2000多个版本.我想将它从Windows迁移到Linux,所以我想备份所有修订并恢复到linux下的新svn配置.

我怎么做 ?

svn tortoisesvn visualsvn visualsvn-server

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

PGAdmin中的PostgreSQL语法错误

我是PostgreSQL的新手,并且正在使用PGAdmin中的查询工具.我正在尝试运行使用变量的pgsql查询,但我似乎无法正确使用语法.

这是一个给出语法错误的示例查询:

DECLARE
  num INTEGER;

BEGIN

  num := 3;
  PRINT num;

END;
Run Code Online (Sandbox Code Playgroud)

更新:
好的,让我试试解释一下.我来自SQL服务器背景.在管理工作室中,我可以打开一个查询窗口并使用(T)-SQL查询.

例如,我可以写这样的东西:

DECLARE @num INT
SET @num = 3
SELECT @num
Run Code Online (Sandbox Code Playgroud)

我知道这是一个愚蠢的例子,但我只是试图声明一个变量并用它做一些事情.我正在尝试熟悉PL/PGSQL.


再次更新:再次
是我.我正在尝试下面的脚本并获得"[ERROR] 7.0-2:语法错误,意外字符".这是否适用于PGAdmin?

DECLARE
  num INTEGER;

BEGIN

  num := 3;
  RAISE NOTICE '%', num;

END;
Run Code Online (Sandbox Code Playgroud)

postgresql plpgsql

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

在java中格式化字符串

我正在使用readLine()方法读取串行缓冲区.readLine()返回的字符串格式为"str1:str2".在一个while循环中,当我使用readLine()次数进行串口命令的响应时,我得到奇怪的输出,如下所示:

String1 : string1
SString11 : String2
StringString2 : String23 
String4 : String5
Run Code Online (Sandbox Code Playgroud)

但我需要输出格式如下

String1       : string1
SString11     : String2
StringString2 : String23 
String4       : String5
Run Code Online (Sandbox Code Playgroud)

我在字符串上使用了split方法,并将两个字符串用分隔符分隔为':'.但是现在我需要在String1中添加空格以对齐所有冒号.

我很抱歉如果我的问题解释很奇怪.但如果有人理解这个问题,请你建议怎么做?

java string

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

在MAC 10.3.9 Cocoa中解析和编写XML?

什么是我可以使用cocoa for mac10.3.9进行解析或写入XML的最佳方法.我特意提到操作系统的版本,因为我在文档中读到过像Mac 10.3.9 sdk不支持NSXML类.

我发现了一个OpenSource libaray(libxml),它是我唯一可以使用的库吗?关于以上内容,请给我一些建议....

请尽快回复......

谢谢普拉迪普.

xml macos cocoa objective-c

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

PHP preg_replace非贪婪的麻烦

我一直在使用以下网站来测试PHP正则表达式,所以我不必经常上传:http: //www.spaweditor.com/scripts/regex/index.php

我正在使用以下正则表达式:

/(.*?)\.{3}/
Run Code Online (Sandbox Code Playgroud)

在以下字符串上(替换为空):

Non-important data...important data...more important data
Run Code Online (Sandbox Code Playgroud)

和preg_replace返回:

more important data
Run Code Online (Sandbox Code Playgroud)

但我希望它能回归:

important data...more important data
Run Code Online (Sandbox Code Playgroud)

我以为?是非贪婪的修饰语.这里发生了什么?

php regex regex-greedy

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

ServiceLocator和开放/封闭原则

我想:

  1. 使所有需要它们的类可以看到通常需要的服务,
  2. 用最少的样板,和
  3. 不牺牲可测试性!

这是一个小项目,我认为DI可能有点矫枉过正,但也许我错了?无论如何,我一直专注于Martin Fowler所描述ServiceLocator模式

在客户端类的构造函数中,我有这样的东西:

this->db = Locator::getDb();
this->log = Locator::getLogger();
Run Code Online (Sandbox Code Playgroud)

然后,类'方法的其余部分通过这些成员属性访问服务,例如:

this->fooModel = new fooModel(this->db);
fooItem1234 = this->fooModel->findById(1234);
Run Code Online (Sandbox Code Playgroud)

但是我也希望"模型"对象(如上面的fooModel)具有这种级别的可见性,因为它们可以从几个不同的位置访问,并且不需要有多个实例.

所以我最初的想法是将Locator扩展为a ::getFooModel()但现在看来我违反了开放/封闭原则,因为每次引入新的模型类时我都要修改Locator.

为了满足OCP,我可以使用动态服务定位器(也在Fowler的页面上描述)但是我出于与他相同的原因并没有完全出售,即它不够明确.

另一个解决方案就是让我所有模型的方法都是静态的.所以:

fooItem1234 = FooModel::findById(1234);
Run Code Online (Sandbox Code Playgroud)

我喜欢这个,因为它是零样板.我可以创建一个新的模型类,并从任何地方开始用一行来调用它.但现在该模型依赖于Locator来找到它的数据库连接,我不确定我对此的看法.首先,如果我需要在不同的数据库连接上打开两个fooModel,那将是一团糟和/或不可能.也就是说,我实际上并不需要这样做,所以这个选项看起来有点诱人.

最后,还有DI.但就像我上面说的那样,我觉得这个小项目可能太过分了.

结论:我有点卡在这里,并希望得到StackOverflow大师的一些建议!

php oop design-patterns dependency-injection

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

C#中的静态方法?

静态方法相对于非静态方法的性能问题是什么?我已经读过静态方法在性能方面更好但我想知道它们如何更快?如果方法没有使用任何实例成员,那么我们的编译器应该处理它并将其视为静态方法.

c# performance static-methods

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

System.Web.Routing.RouteCollection.GetRouteData中的异常

我在iis7上运行的asp.net mvc代码中随机获得了两个异常:

Exception type: InvalidOperationException 
Exception message: Collection was modified; enumeration operation may not execute. 
   at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource)
   at System.Collections.Generic.List'1.Enumerator.MoveNextRare()
   at System.Collections.Generic.List'1.Enumerator.MoveNext()
   at System.Web.Routing.RouteCollection.GetRouteData(HttpContextBase httpContext)
   at System.Web.Routing.UrlRoutingModule.PostResolveRequestCache(HttpContextBase context)
   at System.Web.Routing.UrlRoutingModule.OnApplicationPostResolveRequestCache(Object sender, EventArgs e)
   at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Run Code Online (Sandbox Code Playgroud)

Exception type: NullReferenceException 
Exception message: Object reference not set to an instance of an object. 
   at System.Web.Routing.RouteCollection.GetRouteData(HttpContextBase httpContext)
   at System.Web.Routing.UrlRoutingModule.PostResolveRequestCache(HttpContextBase context)
   at System.Web.Routing.UrlRoutingModule.OnApplicationPostResolveRequestCache(Object sender, EventArgs e)
   at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Run Code Online (Sandbox Code Playgroud)

它不是一贯可重复的,但我认为它是改变(或腐败)的东西RouteTable.Routes.我RouteTable.Routes在项目中访问的唯一地方是Global.asax.cs …

c# asp.net-mvc iis-7 iis-6 asp.net-mvc-routing

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

JavaScript游戏框架

如今<canvas>,很容易在互联网上找到各种很酷的东西.像模拟器,演示,游戏,视觉材料等等.
但似乎每个人都使用画布的基本原语进行编程.

是否存在任何框架<canvas>或实用程序库?

javascript canvas

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