小编Pra*_*yot的帖子

stl vector assign vs insert

我理解2个操作的语义,在用提供的值替换之前进行分配.insert - 在指定位置插入值(如有必要,分配新内存).

除此之外,还有什么理由可以让一个人在另一个人之间吗?换句话说,是否有任何理由使用assign而不是insert.

c++ stl vector

4
推荐指数
3
解决办法
5109
查看次数

带有空格填充的python结构包

我需要使用给定的协议在 python 中创建/发送二进制数据。协议要求固定宽度的字段,加上空间填充。使用python的struct.pack,我唯一能想到的是,计算空间填充并将其添加到自己中。有没有更好的方法来实现这一目标?

谢谢

python struct pack

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

从具有虚函数的基类继承的类的sizeof

对于以下代码片段.

/*This program demonstartes how a virtual table pointer 
 * adds to a size of a class*/

class A{

};

class X{
    public:
        void doNothing(){}
    private:
        char a;

};

class Z:public X {

    public:
        void doNothing(){}
    private:
        char z;

}; 

class Y{
    public:
        virtual void doNothing(){}
    private:
        char a;

};

class P:public Y {

    public:
        void doNothing(){}
    private:
        char pp[4];

};

int main(){
    A a;
    X x;
    Y y;
    Z z;
    P p;
    std::cout << "Size of A:" << sizeof(a) …
Run Code Online (Sandbox Code Playgroud)

c++ virtual-functions sizeof

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

在stl地图中更改值

我知道当我们在STL地图中插入值时,会制作并存储一份副本.我有代码基本上在地图上查找并获得迭代器.

然后我打算使用迭代器来更改地图中的值.结果不是我所期望的那样:当从程序的另一部分访问时,值不会改变.我怀疑它是因为我申请的更改是一份价值副本.相关代码如下.

ObjectMappingType::iterator it = objectMapping_.find(symbol);

if (it == objectMapping_.end()) {
    throw std::invalid_argument("Unknown symbol: " + symbol);
}
get<3>(it->second) = value;
Run Code Online (Sandbox Code Playgroud)

注意:我实际上是在尝试更改boost :: tuple中的值,该值存储为地图的"值"部分.

c++ boost stl map

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

将编译器选项应用于特定文件

我正在尝试在visual studio中编译和构建一个项目,我开始研究使用/ Wall选项进行编译,它提供了所有警告.我想知道有没有办法只在我感兴趣的文件上运行它,因为目前我对文件有一百万个警告,我没有能力或想要改变.

c++ visual-studio-2005 compiler-warnings

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

Java 列表寻址第一个和最后一个元素

除了访问 java 列表中的第一个和最后一个位置之外,还有其他更好的方法吗

curr.set(curr.size()-1, 10);
curr.get(curr.size()-1);
curr.set(0, 10);
curr.get(0);
Run Code Online (Sandbox Code Playgroud)

其中 curr 可以假定为一个列表。

java collections

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

带有bash接口的python提示符

我正在使用python提示来练习一些正则表达式.我想知道是否有办法使用向上/向下箭头(如bash)来循环显示键入的旧命令.我知道它可能,因为它适用于cygwin/windows上的python.谢谢

python

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

带有where子句问题的Oracle时间戳记

我有以下sql查询

select * from MY_TABLE
 MY_COL >= to_timestamp_tz('08-03-17 07:25:00.0000 EST', 'dd-mm-yy hh24:mi:ss.ff TZR') and 
 MY_COL <= to_timestamp_tz('08-03-17 09:08:00.0000 EST', 'dd-mm-yy hh24:mi:ss.ff TZR')
Run Code Online (Sandbox Code Playgroud)

至少有以下2个条目(如sql developer中所示).

03-AUG-17 07.25.51.576000000 AM AMERICA/NEW_YORK
03-AUG-17 07.31.33.553000000 AM AMERICA/NEW_YORK
Run Code Online (Sandbox Code Playgroud)

我的查询不返回任何条目.我希望能够获得这两个条目.我有什么明显的遗失吗?

谢谢

sql oracle timestamp to-timestamp

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

将 istream 参数传递给类构造函数的问题

我的头文件中有以下代码:

class Factovisors {

    public:
        Factovisors(std::istream& strm):strm_(strm)
        {

        }
        void run()
        {
            unsigned int n,m;
            while (!strm_.eof()) {
            strm_ >> n >> m;

            if (isFact(n,m))
                std::cout << m << " divides " << n << "!\n";
            }
        }

        std::istream strm_;

};
Run Code Online (Sandbox Code Playgroud)

我的 .cpp 文件具有以下代码。

 std::ifstream strm("factovisor.test");

    Factovisors   facto(strm);

    facto.run();

    strm.close();
Run Code Online (Sandbox Code Playgroud)

我的编译器给我的错误是:

std::ios::basic_ios(const std::ios &) is not accessible from
std::istream::basic_istream(const std::istream &)
Run Code Online (Sandbox Code Playgroud)

我想我错过了一些非常明显的东西。所以任何帮助将不胜感激。

c++

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

getline vs istream_iterator

如果您正在从文件中逐行输入(将行读入字符串,用于标记化),是否有理由提前使用getline或istream_iterator.

c++ istream-iterator

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

python字符串连接问题

我有一些代码,我将连接应用于列表.加入前的列表如下所示:

["'DealerwebAgcy_NYK_GW_UAT'","'DealerwebAgcy'","'UAT'","@ ECNPhysicalMarketCo nfigId","'GATEWAY'","'DEALERWEB_MD_AGCY'","'NU1MKVETC'","'mkvetcu'"," 'C:\ te mp'",'0',''NYK'",'0','1',''isqlw.exe'','GetDate()','12345','''NYK'" ,'350','7']

在连接之后,这是结果字符串

'DealerwebAgcy_NYK_GW_UAT','DealerwebAgcy','UAT',@ ECNPhysicalMarketConfigId,'GAT EWAY','DEALERWEB_MD_AGCY','NU1MKVETC','mkvetcu','C:emp',0,'NYK',0,1,'isqlw .exe文件",GETDATE(),12345, 'NYK',350,7

注意最终的元素'C:\temp''C: emp',

我在python命令提示符上尝试了类似的东西,但我无法重复此操作.

负责这种魔力的相关代码如下.

values_dict["ECNMarketInstance"]  = [strVal(self.EcnInstance_),strVal      (self.DisplayName_) ,strVal(self.environment_), '@ECNPhysicalMarketConfigId',strVal(self.EcnGatewaTypeId_),strVal(self.ConnectionComponent_),strVal(self.UserName_),strVal(self.Password_),strVal(self.WorkingDir_),"0",strVal(self.region_),"0","1", strVal(self.LUVersion_), "GetDate()" ,  self.LUUserId_,strVal(self.LUOwningSite_),self.QuoteColumnId_ , self.Capabilities_]

delim = ","
joined = delim.join(values) 
print values
print joined
Run Code Online (Sandbox Code Playgroud)

python string list

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

Windbg问题为用户定义的可执行文件加载pdb

我有一个用于windows的c ++可执行文件和一个我正在尝试使用windbg进行分析的minidump.我将assosciated pdb和minidump复制到同一个文件夹中并设置符号路径.然而Windbg抱怨DBGHELP:c:\ logs\marketdepthserver crashdump\SFMarketDepthServer.pdb - E_PDB_CORRUPT除了总结文件已损坏..还有什么我可以从中确定或是否有一个允许我加载pdb的解决方法.

c++ windbg

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

Python包含异常

我正在查看python中有一个try: except Exception块的代码.我已经识别出可能引发的代码ValueError.

我的问题:ValueErrorexcept条款中Exception包含(除了已经包含的内容ValueError)之外,是否有意义(或者是一种好的做法)?

try:
    func_raises_value_error()
    func_raises_unknown_error()
except (ValueError, Exception) as e:
  pass
Run Code Online (Sandbox Code Playgroud)

python exception-handling exception

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