小编Dri*_*ism的帖子

将参数传递给Start-Job scriptblock?

我想设置一个cmdlet来启动和停止mysql,我正在尝试使用Start-Job.我的Powershell配置文件中包含以下内容:

$mysqlpath = "C:\Program Files\MySQL\MySQL Server 5.5\bin"
Function Start-Mysql
{
    Start-Job -ScriptBlock { & "$mysqlpath\mysqld.exe" }
}
Run Code Online (Sandbox Code Playgroud)

然而,变量似乎没有在job命令中扩展?我一定错过了某种范围规则.有人可以建议吗?谢谢!

powershell powershell-2.0

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

条件boost :: shared_ptr初始化?

为了编写更好的代码,我已经致力于使用boost的智能指针.

应该boost::shared_ptr像这样初始化吗?

boost::shared_ptr<TypeX> px(new TypeX);
Run Code Online (Sandbox Code Playgroud)

我的混淆来自类似于此的代码块:

void MyClass::FillVector()
{
    boost::shared_ptr<TypeX> tempX;
    if(//Condition a)
    {
        boost::shared_ptr<TypeX> intermediateX(new TypeA);
        tempX = intermediateX;
    }
    else
    {
        boost::shared_ptr<TypeX> intermediateX(new TypeB);
        tempX = intermediateX;
    }
    _typeXVec.push_back(tempX); // member std::vector< boost::shared_ptr<TypeX> >
}
Run Code Online (Sandbox Code Playgroud)

是否有一种可接受的方法来跳过该中间版本的shared_ptr,同时将其保持在范围内以推回到_typeXVec?

谢谢.

编辑:想要澄清TypeA和TypeB都是TypeX的孩子.

c++ boost smart-pointers

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

Pythonic方法定义__init__辅助方法?

请原谅,我是Python的新手,并试图学习Pythonic方法.我正在设计一个基本上从许多不同来源(文件)初始化其状态的类.我已将此行为隔离到单个实例方法中_load_from_file(file).它被称为多次__init__,但我通常喜欢将我的构造函数保留在类定义的开头,并将我的内部帮助器方法放在最后.

但是,如果我采用这种方法,_load_from_file则不会__init__在我想要使用它的地方定义.你怎么把pythonistas列出来?

详细说明:

class Thing(object):
    def __init__(self, file_path):
        f = open('file_path')
        _load_from_file(self,"someData",f) # ISSUES!
        _load_from_file(self,"moreData",f) # WRONG!
        f.close()

    # Interface
    #     ...

    # Internal - Where do you guys put this stuff?
    def _load_from_file(self,thingToLoad,file):
        # logic
Run Code Online (Sandbox Code Playgroud)

python oop coding-style class

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