问题列表 - 第20826页

复制ctor和赋值运算符中的任何陷阱都有略微不同的语义?

请查看下面的代码并告诉我它是否会在将来导致问题,如果是,那么如何避免它们.

class Note
{
   int id;
   std::string text;

public:
   // ... some ctors here...

   Note(const Note& other) : id(other.id), text(other.text) {}

   void operator=(const Note& other) // returns void: no chaining wanted
   {
      if (&other == this) return;
      text = other.text;  
      // NB: id stays the same!    
   }
   ...
};
Run Code Online (Sandbox Code Playgroud)

简而言之,我希望复制构造函数能够创建对象的精确副本,包括其(数据库)ID字段.另一方面,当我分配时,我只想复制数据字段.但我有一些担忧,因为通常复制ctor和operator =具有相同的语义.

id字段仅由Note及其朋友使用.对于所有其他客户端,赋值运算符确实创建了精确副本.用例:当我想编辑一个笔记时,我使用copy ctor创建一个副本,编辑它,然后在管理Notes的Notebook类上调用save:

 Note n(notebook.getNote(id));
 n = editNote(n); // pass by const ref (for the case edit is canceled)
 notebook.saveNote(n);
Run Code Online (Sandbox Code Playgroud)

另一方面,当我想要创建一个与现有音符具有相同内容的全新音符时,我可以这样做:

 Note n; 
 n = notebook.getNote(id); 
 n.setText("This is a copy"); …
Run Code Online (Sandbox Code Playgroud)

c++ copy-constructor assignment-operator semantics

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

如何在Windows窗体中的构造函数中注入依赖项

在asp.net-mvc中,我有Windsor Controller Factory,它将所有依赖项注入到控制器中,但是如何在Windows窗体中获得它?

例如,如果有这个Form1,我将如何获得Form1的实例,我应该使用resolve(由某个ppl称为ServiceLocator和反模式)?

public class Form1
{
   private IBarService _barService;

   public Form1(IBarService barService)
   {
       _barService = barService;
   }
}
Run Code Online (Sandbox Code Playgroud)

c# castle-windsor ioc-container inversion-of-control winforms

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

如何告诉M2Eclipse将jar文件安装为maven依赖项

我想添加jpoller.jar为maven依赖项,因此我编辑了我的pom.xml文件以包含它:

<dependency>
    <groupId>org.sadun</groupId>
    <artifactId>jpoller</artifactId>
    <version>1.5.2</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

现在,正如预期的那样,当我从命令行编译时,我得到一个错误,因为jpoller它不在我列在我的pom中的任何存储库中,也不能找到它.虽然我可以为它创建一个存储库,但我不想在这一点上.因此,我收到以下错误:

[INFO]无法解决工件.

缺少:---------- 1)org.sadun:jpoller:jar:1.5.2

尝试从项目网站手动下载文件.

然后,使用以下命令安装它:mvn install:install-file -DgroupId = org.sadun -DartifactId = jpoller -Dversion = 1.5.2 -Dpackaging = jar -Dfile =/path/to/file

如何在没有maven CLI的机器上的M2Eclipse插件中执行此操作?

dependencies maven-2 m2eclipse pom.xml

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

有关替换Microsoft .NET的Web服务增强功能(WSE)3.0的建议

是否有一种简单的方法可以替换使用Web服务增强功能(WSE)3.0 for Microsoft .NET的代码,而不是像WCF那样深奥的人?

wcf web-services

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

有没有办法迭代和反映枚举中包含的成员名称和值?

假设我有以下内容enum:

public enum Colors
{
    White = 10,
    Black = 20,
    Red = 30,
    Blue = 40
}
Run Code Online (Sandbox Code Playgroud)

我想知道是否有办法遍历所有成员Colors以查找成员名称及其值.

c# iteration reflection enums enumeration

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

如何在C++中正确地进行线程化?

我有一个相当大的动态稀疏矩阵对象类来编写,我希望发生以下情况:一个线程处理将元素放入矩阵,另一个处理从矩阵读取.

这两者冲突的唯一时间是他们想要同时访问同一行/列.因此,我已经确定每个行/列的简单互斥锁就足够了.

现在这是我第一次用C/C++实际进行线程化,我想通过书籍来做,可以这么说.我有两个问题.

  1. 如何生成这些线程?这是一个语言问题.
  2. 如何尽可能高效地实现锁定?我想如果存在冲突,那么请求线程将自己置于行中并等待资源被释放.但是,我该如何实现清醒呢?我可以对内存位置进行循环轮询,但这并不优雅.理想情况下,我认为基于中断的方法是最好的.

c++ concurrency multithreading

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

Config Maven 2在编译阶段打印出javac命令

有没有办法强制Maven 2(> 2.0.10)打印它正在执行的实际javac命令.即使我们使用MAVEN_OPTS提升了最大值,我们仍然会耗尽内存.我希望能够看到正在执行的实际命令正在耗尽内存.

我尝试在pom文件的插件管理部分中使用下面的详细设置,但似乎没有给我javac命令:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <source>1.5</source>
        <target>1.5</target>
        <maxmem>1024m</maxmem>
        <compilerArguments>
            <verbose/>
        </compilerArguments>
    </configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)

java maven-2 javac maven

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

OES在"GL_RENDERBUFFER_OES"中的含义是什么?

我正在阅读Apple的OpenGL文档.我注意到许多GL名称都有这种格式GL_RENDERBUFFER_OES.OES这些名称部分的含义是什么?

opengl-es naming-conventions

12
推荐指数
2
解决办法
4893
查看次数

在PHP中使用AES加密时,应该在哪里存储密钥?

我正在我的网络应用程序中实现AES-256位加密:

http://www.utoxin.name/2009/07/automatic-db-field-encryption-in-cakephp/

其中一个步骤是存储使用的密码并键入boostrap文件.但是什么阻止某人用PS或其他东西扫描文件系统并解密数据呢?

保护数据的最佳方法是什么?

php cakephp aes mcrypt

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

MVC设计模式是否用于商业计算机游戏

MVC设计模式是否用于商业电脑游戏?

特别是在高性能游戏方面,我很好奇游戏行业是否有MVC的商业用户?

model-view-controller

33
推荐指数
3
解决办法
9111
查看次数