问题列表 - 第7229页

通过指向基类对象的指针来操作派生类对象的指针

我有这个代码代表银行:

class Bank {
    friend class InvestmentMethod;
    std::vector<BaseBankAccount*> accounts;
public:
//...
Run Code Online (Sandbox Code Playgroud)

BaseBankAccount是银行中所有帐户的抽象类:

class BaseBankAccount {
    public:
        BaseBankAccount() {}
        virtual int getInterest() const = 0;
        virtual int getInvestedSum() const = 0;
        virtual void increaseDepositSum(int additionalSum) = 0;
        virtual void close(std::string& reason) = 0;
        virtual ~BaseBankAccount() {}
};
Run Code Online (Sandbox Code Playgroud)

问题是,当我通过指向基类对象的指针操作指向派生类对象的指针时,我可以调用的方法集受BaseBankAccount公共接口的限制 - 无论REAL对象是什么类型.

例如,并非每个帐户都可以选择增加已投入的金额 - 所以,我没有在基类中包含此方法:

class BankAccount: public BaseBankAccount {
protected:
    BaseDeposit* deposit;
    double sumInvested;
public:
    BankAccount(int sum, int term, int inter): sumInvested(sum), depositTerm(term), interest(inter) {}
    int getInterest() const { return interest; } …
Run Code Online (Sandbox Code Playgroud)

c++ inheritance pointers

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

java JAXB和继承

我想创建一个列表不同类型的类,它们都是来自同一个superClass的继承.
我从一个xsd文件开始,我想创建java类,并在运行时加载具有列表节点的xml文件.
我的问题是定义将创建java类的xsd.

我正在使用JAXB 2.0 eclipse插件.

最后我想要一个List<superClass>.
我可以用一个简单的JAXB来做吗?

java jaxb

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

语义Web:RDF开发教程

我是Semantic Web的新手.我想开始创建一些基本的RDF文档并发布它们以了解它是如何工作的.我发现了很多关于概念,词汇等的信息但是我找不到任何与开发相关的东西,因为它是什么开发需要的环境,需要什么工具.我来自.net背景.是否有任何关于如何入门和在网页中使用rdf的教程.

rdf semantic-web

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

如何在使用shared_ptr时检测周期

shared_ptr是Boost库中的引用计数智能指针.

引用计数的问题在于它不能处理循环.我想知道如何用C++解决这个问题.

请不要这样的建议:"不要制作周期",或"使用weak_ptr".

编辑

我不喜欢只使用weak_ptr的建议,因为很明显,如果你知道你会创建一个循环,那么你就不会有问题.如果在运行时生成shared_ptrs,您也无法知道编译时会有一个循环.

所以,请自行删除使用weak_ptr的答案,因为我特别要求不要那些答案......

c++ garbage-collection reference-counting shared-ptr

21
推荐指数
4
解决办法
6589
查看次数

什么是django中的"生成器对象"?

我使用Django投票包,当我在shell中使用方法get_top()时,它返回类似"0x022f7AD0的生成器对象,我之前从未见过这样的东西,你如何访问它,它是什么?

我的代码:

v=Vote.objects.get_top(myModel, limit=10, reversed=False)
print v
<generator object at 0x022f7AD0>
Run Code Online (Sandbox Code Playgroud)

注意:我认为get_top只会返回一个很好的myModel列表,我可以做一些像v.name

python generator

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

惊喜!shell建议命令行开关

我注意到bash shell可以为你的命令建议命令行开关.

只需键入您的命令,短划线( - )和类型选项卡.shell将显示可用的开关.

例如,尝试:

andy@andyx:~$ java -
Run Code Online (Sandbox Code Playgroud)

并按标签 - 惊喜!

截图

问题是:

如何与此功能连接.即,如果我编写一个要从控制台运行的程序,那么告诉shell哪些开关可用的API是什么?

linux bash shell command-line

16
推荐指数
3
解决办法
5519
查看次数

高级乳胶教程/书籍

我已经使用LaTeX大约3 - 4年了.在那段时间里,我已经找到了我需要的东西,最常见的是Googling.但是,我想学习LaTeX的一些更高级的功能,例如编辑甚至创建我自己的类文件和bibtex样式.之前我曾经使用过一些相当强大的类文件,但我很难理解语法,因为它很模糊.

有没有人知道我可以用来学习LaTeX的这些高级功能的好教程(或书)?

latex

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

在vb中获取项目中文件的路径

我在vb.net中运行Windows应用程序.我在名为XmlFiles的文件夹中有一个名为mail.xml的xml文件.默认情况下,我必须获取mail.xml的路径.我要写的代码是什么代码来实现它可能?

.net vb.net file-io

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

在C#中将查询字符串转换为字典的最佳方法

我正在寻找将查询字符串从HTTP GET请求转换为字典的最简单方法,然后再返回.

我认为一旦它以字典形式对查询进行各种操作就会更容易,但我似乎有很多代码只是为了进行转换.有推荐的方法吗?

c#

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

多个同时网络连接 - Telnet服务器,Python

我目前正在用Python编写一个telnet服务器.这是一个内容服务器.人们将通过telnet连接到服务器,并呈现纯文本内容.

我的问题是服务器显然需要支持多个同时连接.我现在的实现只支持一个.

这是我开始使用的基本概念验证服务器(虽然程序随着时间的推移发生了很大变化,但基本的telnet框架却没有):

import socket, os

class Server:
    def __init__(self):
        self.host, self.port = 'localhost', 50000
        self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        self.socket.bind((self.host, self.port))

    def send(self, msg):
        if type(msg) == str: self.conn.send(msg + end)
        elif type(msg) == list or tuple: self.conn.send('\n'.join(msg) + end)

    def recv(self):
        self.conn.recv(4096).strip()

    def exit(self):
        self.send('Disconnecting you...'); self.conn.close(); self.run()
        # closing a connection, opening a new one

    # main runtime
    def run(self):
        self.socket.listen(1)
        self.conn, self.addr = self.socket.accept()
        # there would be more activity here
        # i.e.: sending things to the …
Run Code Online (Sandbox Code Playgroud)

python sockets telnet

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