小编Bjö*_*lex的帖子

关于c ++中虚函数的问题

我是C++的初学者,这些天我正在研究虚函数.有些问题让我很困惑.

例如:

class A {
  public:
  virtual void f() {
      //do something; 
  }
}

class B: public A {
   public:
   virtual void f() {
//do something;
}
}
Run Code Online (Sandbox Code Playgroud)
  1. class A包含一个虚函数f(),并class B继承它.在里面class B,该函数f()也被声明为虚拟,所以这意味着f()class B重载f()class A?它是否允许继承的类B重载f()?抑或B定义一个新的虚拟功能,该功能从不同f()class A

  2. 虚函数提供了一种重载方法的方法.如果B继承A并且没有声明f()as virtual,那么可以C继承B重载的类f()并实现多态吗?

c++ polymorphism virtual

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

如何对命令行参数进行单元测试?

我正在尝试向Python提供命令行参数unittest并面临一些问题.我在互联网上搜索并找到了提供参数的方法

unittest.main(argv=[myArg])
Run Code Online (Sandbox Code Playgroud)

问题是这适用于单个命令行参数但对多个参数失败.

unittest.main(argv=[myArg1, myArg2, myArg3])
Run Code Online (Sandbox Code Playgroud)

以上呼叫失败,出现以下错误:

  File "/opt/python2.6.6/lib/python2.6/unittest.py", line 816, in __init__
    self.parseArgs(argv)
  File "/opt/python2.6.6/lib/python2.6/unittest.py", line 843, in parseArgs
    self.createTests()
  File "/opt/python2.6.6/lib/python2.6/unittest.py", line 849, in createTests
    self.module)
  File "/opt/python2.6.6/lib/python2.6/unittest.py", line 613, in 
    loadTestsFromNames suites = [self.loadTestsFromName(name, module) 
    for name in names]
  File "/opt/python2.6.6/lib/python2.6/unittest.py", line 584, in 
    loadTestsFromName parent, obj = obj, getattr(obj, part)
AttributeError: 'module' object has no attribute 'admin'
Run Code Online (Sandbox Code Playgroud)

深入研究并发现Python unittest将使用的所有内容argv视为要运行的测试用例.

请告诉我如果仍有办法为我的单元测试案例提供多个论据.我想覆盖一些硬编码值,如IP地址,测试用例标记等,并基本上从主测试脚本中运行此测试脚本.

提前致谢.

python unit-testing command-line-arguments

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

C++使用命名空间语句

namespace MyNamespace
{
    static void foo1()
    {

    }
}

using namespace MyNamespace;

class MyClass
{
    void foo2()
    {
        ::foo1();
    }    
};
Run Code Online (Sandbox Code Playgroud)

范围解析操作::意味着在全局命名空间中使用方法.我们可以在这里使用::foo1().这意味着方法foo1()在全局命名空间中,对吗?

我的问题是,是否using namespace ANAMESPACE_NAME意味着我们将命名空间中的所有元素导入ANAMESPACE_NAME全局命名空间?

c++ namespaces

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

错误:没有名为qgis的模块

我正在研究Python26,pyqt4设计器和QGIS.我的代码文件(.py文件)包含:

   import sys
   from PyQt4 import QtGui, QtCore
   from qgis.core import *
   from qgis.gui import *
Run Code Online (Sandbox Code Playgroud)

但是当我尝试运行它时会出错:

Traceback (most recent call last):
  File "C:\rt_sql_layer_working\DlgQueryBuilder.py", line 29, in <module>
    from qgis import core,gui
ImportError: No module named qgis
Run Code Online (Sandbox Code Playgroud)

我已将环境变量中的PATH设置为

C:\Program Files\Quantum GIS Wroclaw\bin
C:\Program Files\Quantum GIS Wroclaw\apps\qgis\bin
Run Code Online (Sandbox Code Playgroud)

python pyqt qgis

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

Tycho - 对Import-Package的"不满意的约束"

我刚刚开始使用第谷,我很早就被困住了.也许我误解了一些东西,所以为了以防万一,这就是我所期待的:我用OSGi风格定义我的捆绑需求(即在MANIFEST.MFvia中Import-Package),而Tycho不知何故在运行中使用那些信息而不是我需要重新定义所有在Maven风格(即我不必将依赖项放在pom.xml中).

所以,我在Eclipse中使用m2eclipse插件,m2eclipse-tycho add和PDE插件创建了一个简单的Maven项目,并将以下Tycho内容放入pom中:

<properties>
    <tycho-version>0.15.0</tycho-version>
</properties>

<build>
    <plugins>
        <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>tycho-maven-plugin</artifactId>
            <version>${tycho-version}</version>
            <extensions>true</extensions>
        </plugin>
    </plugins>
</build>
Run Code Online (Sandbox Code Playgroud)

在一些古怪的配置错误中挣扎,最后得到一个基本上空的项目(即没有源代码),在Eclipse中没有给出任何错误或警告.然后我从另一个项目中复制了我的源代码,并且(正如预期的那样)由于缺少依赖性而得到了一堆编译器错误.第一个是来自org.jboss.netty.channel的AbstractChannel.我使用版本3.5.1.Final of Netty,所以我编辑了我的MANIFEST.MF以包括:

Import-Package: org.jboss.netty.channel;version="[3.5.1,4)"
Run Code Online (Sandbox Code Playgroud)

我当时期待Tycho以某种方式神奇地弄清楚我需要Netty,因此就好像我在我的Maven pom.xml中插入了类似下面的内容:

<dependency>
    <groupId>org.jboss.netty</groupId>
    <artifactId>netty</artifactId>
    <version>3.5.1.Final</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

相反,所有发生的事情是我在Eclipse中有一个额外的错误,说:

Unsatisfied constraint: 'Import-Package: org.jboss.netty.channel;version="[3.5.1,4.0.0)"
Run Code Online (Sandbox Code Playgroud)

我不知道从哪里开始.对Tycho应该做什么有一些根本的误解吗?或者我还需要设置其他东西,以便能够从Import-Package条目MANIFEST.MF<dependency>pom.xml条目进行"神奇"的翻译吗?或者是其他东西?

提前致谢.

osgi tycho maven

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

库类名的大写

为什么collection.defaultdictcollection.OrderedDict有不同的资本化?

是否有一些我应该注意的细微差别?

(P3K)

python python-3.x

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

使用STL算法重写的指针循环示例,没有循环?

我如何重写下面的代码,例如,使用没有循环的STL算法?

vector<double> pizzaBox;
int biggestSlice = 0;
for (int* p = &pizzaBox[0]; p != pizzaBox[pizzaBox.size()]; p++) {
    if(*p > biggestSlice)
        biggestSlice = *p;
}
Run Code Online (Sandbox Code Playgroud)

c++ algorithm loops for-loop stl

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

在数字常量之前预期的nonqualified-id

template <int K>
class Wrap
{
   // stuffs
};
Run Code Online (Sandbox Code Playgroud)

如果我实例化模板有Wrap < 5>4 > p;什么问题?我在数值常量错误之前得到了预期的nonqualified-id.如何解决这个问题?

c++ templates

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

为什么ListDataModel不能使用有界类型参数?

我只是尝试创建一个ListDataModel有界类型,如下所示:

DataModel<? extends Foo> model = new ListDataModel<? extends Foo>(fooList);
Run Code Online (Sandbox Code Playgroud)

,哪种fooList类型List<? extends Foo>.我收到以下错误:

unexpected type
  required: class or interface without bounds
  found: ? extends Foo
Run Code Online (Sandbox Code Playgroud)

我目前的解决方法是将我的数据复制到一个ArrayList<Foo>,并DataModel<Foo>从中构建一个,但我想知道为什么这是必要的,如果有任何方法可以使它工作?

java generics jsf-2

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

您是否了解任何其他错误处理方法而不是try/catch及其变体?

我很有兴趣了解除try/catch及其变体之外的编程语言中的一些其他错误处理方法.

有谁知道这种错误处理的一些有趣案例?

error-handling programming-languages

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