小编Moe*_*oeb的帖子

虚拟继承如何解决"钻石"(多重继承)歧义?

class A                     { public: void eat(){ cout<<"A";} }; 
class B: virtual public A   { public: void eat(){ cout<<"B";} }; 
class C: virtual public A   { public: void eat(){ cout<<"C";} }; 
class D: public         B,C { public: void eat(){ cout<<"D";} }; 

int main(){ 
    A *a = new D(); 
    a->eat(); 
} 
Run Code Online (Sandbox Code Playgroud)

我理解钻石问题,上面的代码没有那个问题.

虚拟继承究竟是如何解决问题的?

我的理解: 当我说A *a = new D();,编译器想要知道类型的对象是否D可以分配给类型的指针A,但它有两个可以遵循的路径,但不能自己决定.

那么,虚拟继承如何解决问题(帮助编译器做出决定)?

c++ inheritance multiple-inheritance virtual-inheritance diamond-problem

85
推荐指数
5
解决办法
7万
查看次数

'%p`在哪里对printf有用?

毕竟,这两个陈述都做同样的事情......

int a = 10;
int *b = &a;
printf("%p\n",b);
printf("%08X\n",b);
Run Code Online (Sandbox Code Playgroud)

例如(具有不同的地址):

0012FEE0
0012FEE0
Run Code Online (Sandbox Code Playgroud)

根据需要格式化指针是微不足道的%x,那么是否有一些很好的%p选择?

c c++ printf

57
推荐指数
4
解决办法
11万
查看次数

如何在不使用任何内置高斯函数的情况下高斯模糊图像?

我想使用原生高斯模糊公式来模糊我的图像.我读过这篇文章,但我不知道如何实现这一点.

如何使用公式来确定权重?

我不想使用MATLAB所具有的任何内置函数

c image-processing gaussianblur

54
推荐指数
3
解决办法
7万
查看次数

如何更改C++ STL向量的特定元素

vector<int> l;
for(int i=1;i<=10;i++){
   l.push_back(i);
}
Run Code Online (Sandbox Code Playgroud)

现在,例如,如何5th element将矢量更改为-1

我试过l.assign(4, -1); 它的表现并不像预期的那样.其他矢量方法似乎都不合适.

我使用了矢量,因为我需要在我的代码中使用随机访问功能(使用l.at(i)).

c++ stl vector

45
推荐指数
4
解决办法
11万
查看次数

如何将多维数组传递给C和C++中的函数

#include<stdio.h>
void print(int *arr[], int s1, int s2) {
    int i, j;
    for(i = 0; i<s1; i++)
        for(j = 0; j<s2; j++)
            printf("%d, ", *((arr+i)+j));
}

int main() {
    int a[4][4] = {{0}};
    print(a,4,4);
}
Run Code Online (Sandbox Code Playgroud)

这适用于C,但不适用于C++.

错误:

cannot convert `int (*)[4]' to `int**' for argument `1' to 
`void print(int**, int, int)'
Run Code Online (Sandbox Code Playgroud)

为什么它在C++中不起作用?需要做出哪些改变?

c c++ arrays multidimensional-array

42
推荐指数
6
解决办法
8万
查看次数

如何找出在Oracle中创建特定表的时间?

在Oracle中,有没有办法找出特定表的创建时间?

同样,有没有办法找出插入/最后更新特定行的时间?

oracle database-metadata oracle11g

39
推荐指数
3
解决办法
14万
查看次数

位图索引如何有用?

维基百科给出了这个例子

Identifier    Gender         Bitmaps
                              F    M
1           Female            1    0
2           Male              0    1
3           Male              0    1
4           Unspecified       0    0
5           Female            1    0
Run Code Online (Sandbox Code Playgroud)

但我不明白这一点.

  • 这首先是一个指数怎么样?在给定密钥的情况下,不应该指向行(使用rowid)的索引吗?
  • 这些索引有用的典型查询是什么?它们如何比B树索引更好?我知道如果我们在Gender这里使用B树索引,我们将获得大量结果,例如,我们寻找Gender = Male,需要进一步过滤(因此不是很有用).Bitmap如何改善这种情况?

database algorithm indexing database-design bitmap

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

为什么数字1,2和3使用C rand()函数经常出现?

我想要做的是生成一些随机数(不一定是单个数字)

29106
7438
5646
4487
9374
28671
92
13941
25226
10076
Run Code Online (Sandbox Code Playgroud)

然后计算我得到的位数:

count[0] =       3  Percentage =  6.82
count[1] =       5  Percentage = 11.36
count[2] =       6  Percentage = 13.64
count[3] =       3  Percentage =  6.82
count[4] =       6  Percentage = 13.64
count[5] =       2  Percentage =  4.55
count[6] =       7  Percentage = 15.91
count[7] =       5  Percentage = 11.36
count[8] =       3  Percentage =  6.82
count[9] =       4  Percentage =  9.09
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的代码:

#include <stdio.h>
#include <time.h>
#include <stdlib.h>

int …
Run Code Online (Sandbox Code Playgroud)

c random

28
推荐指数
3
解决办法
1238
查看次数

我想学习游戏开发.我应该使用哪种语言?

我听说C++和Python是两种最常用的语言.

我应该选择哪一个?

在Python中 - 版本2或3?


我正在研究基本的游戏开发(例如赛车游戏)和非Flash/iphone /浏览器游戏.

我也不想跳到C#.

C++ vs python是我正在考虑的......


另外,如果您能让我知道一些在线资源,那将会很有帮助.

c++ python

21
推荐指数
6
解决办法
3万
查看次数

C/C++中的#error如何工作?

我从#猜测它只是一个编译时实用工具.如何在C/C++程序中使用它?

在互联网上找不到太多.任何链接都会有所帮助.

c c++ c-preprocessor

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