小编Gar*_*auh的帖子

如何替换C标准库函数?

我们如何用我们自己的函数实现替换C标准库函数?

例如,如何替换strcpy()我自己的实现strcpy()并将所有调用链接到新实现?

c

9
推荐指数
3
解决办法
5987
查看次数

为什么dynamic_cast是邪恶的?在这种情况下我应该使用dynamic_cast吗?

有人说 the use of dynamic_cast often means bad design and dynamic_cast can be replaced by virtual functions

  1. 为什么使用被dynamic_cast认为是糟糕的设计?
  2. 假设我有函数名func(Animal* animal, int animalType),func中的实现如下:

    bool func(Animal* animal, int animalType)
    {
      ...
      /* Animal is the base class of Bear, Panda, Fish ....
      dynamic_cast animal to real animals(Bear, Panda, Fish...) 
      according to animalType. Do some processing with this specific
      type of animal, using its additional information beyond base 
      class Animal. */
    }
    
    Run Code Online (Sandbox Code Playgroud)

这种情况是否正确使用dynamic_cast

c++ dynamic-cast rtti

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

对火花RDD容错的误解

很多人说:

Spark不会在hdfs中复制数据.

Spark在DAG图中安排操作.Spark构建RDD谱系.如果RDD丢失,可以在谱系图的帮助下重建它们.因此不需要数据复制,因为可以从谱系图重新计算RDDS.

我的问题是:

如果一个节点出现故障,spark将只重新计算在该节点上丢失的RDD分区,但重新计算过程中所需的数据源来自何处?你的意思是它的父RDD在节点出现故障时仍然存在吗?如果失去一些分区的RDD没有父RDD(如RDD来自火花流接收器)怎么办?

fault-tolerance distributed-computing apache-spark spark-streaming rdd

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

图像边缘和渐变之间的关系是什么?

是否有人可以帮我解释"边缘点可能位于梯度模块的最大值,边缘轮廓的方向与梯度的方向正交."

image-processing edge-detection

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

如何使UltraEdit自动完成C++类的类成员/函数?

我目前正在使用配备Ctags的UltraEdit来编辑C++文件(.cpp).它的Ctags支持在我输入时自动自动填充符号 - 但是它不能正确地将自己限制在类的成员中,这是非常盲目的.如何使UltraEdit像Vim + ctags + cppcomplete一样更智能?到目前为止,我在网上找不到任何插件.

autocomplete ctags ultraedit

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

const如何使函数重载?

我用C++编写了这段代码:

class Foo
{
public:
    int& fun(){return var;}       // 1st fun
    int fun() const {return var;}  // 2rd fun
 private:
    int var;
};
int main()
{
    Foo foo;
    int i = foo.fun();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我知道C++不能通过返回值来区分重载函数,但是为什么当我向第2个函数添加const时,重载可以工作?'const'做了什么?

c++ overloading const

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

Informix列的最大长度是多少,可以增加吗?

我正在尝试使用以下内容创建一个表:

CREATE TABLE GTW_WORKFLOW_MON 
(
    WORKFLOW_NAME VARCHAR(255) NOT NULL, 
    WORKFLOW_LOADED NUMERIC(20) NOT NULL, 
    ACTIVITY_NAME VARCHAR(255) NOT NULL,
    FLAGS INTEGER NOT NULL,
    MONITOR_NAME VARCHAR(255) NOT NULL,
    CLASSNAME VARCHAR(255) NOT NULL,
    STR0 VARCHAR(255),
    STR1 VARCHAR(255),
    STR2 VARCHAR(255), 
    NUM0 VARCHAR(255), 
    NUM1 VARCHAR(255), 
    NUM2 VARCHAR(255), 
    DATE0 VARCHAR(255),
    DATE1 VARCHAR(255), 
    DATE2 VARCHAR(255), 
    PRIMARY KEY (WORKFLOW_NAME, WORKFLOW_LOADED, ACTIVITY_NAME, MONITOR_NAME)
)
Run Code Online (Sandbox Code Playgroud)

由于列长度不够大,它会失败.

sql database informix

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

如何在kafka中同步多个日志?

假设我有两种类型的日志,它们有一个公共字段'uid',如果包含uid的这两个日志的日志到达,我想输出日志,就像连接一样,Kafka可能吗?

apache-kafka apache-kafka-streams

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

是什么决定了C++程序中对象破坏的顺序?

C++程序是这样的:

class Foo
{ 
    // something here
};

int main ()
{
     Foo f_A;
     Foo f_B;
     Foo f_C;
     //do something here

     return 0;
}
Run Code Online (Sandbox Code Playgroud)

事实已经证明,f_A之前的构造f_B,解构之后f_B,以及在g ++ 之后f_B解构f_C.确定序列的是什么?编译器是否相关?

c++ oop object

0
推荐指数
2
解决办法
244
查看次数