C ++无法将参数1从'int **'转换为'const int **'

瓦希德(Vahid Mirjalili)

我想以只读模式将2D指针/数组传递给函数。我为一维外壳尝试了这一点,并且按我的要求工作了,但是对于二维阵列却没有!

错误消息是

cannot convert argument 1 from 'int**' to 'const int **'

我的代码在这里

void test_constdpointer(int const** pda){
    cout << "function: \n";
    for (int i = 0; i < 3; i++) {
        cout << pda[i][0] << " " << pda[i][1] << " " << pda[i][2] << "\n";
    }
}

int _tmain(int argc, _TCHAR* argv[])
{
    int **da;
    da = new int*[3];
    for (int i = 0; i < 3; i++) {
        da[i] = new int[3];
    }

    for (int i = 0; i < 3; i++) {
        cout << da[i][0] << " " << da[i][1] << " " << da[i][2] << "\n";
    }
    test_constdpointer(da);
    return 0;
}
船长

您需要将两个指针级别都乘以const

void test_constdpointer(int const* const* pda)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将Const char *转换为Unsigned long int-strtoul

来自分类Dev

无法将参数1从int转换为int &&错误

来自分类Dev

将const char *类型转换为int数组

来自分类Dev

C ++将int转换为double

来自分类Dev

无法将参数'1'的'std :: basic_string <char>'转换为'const char *'到'int system(const char *)'

来自分类Dev

C ++将int转换为* LONG

来自分类Dev

无法将参数1从'ATL :: CComPtr <T>'转换为'int'

来自分类Dev

C ++-错误C2664:'int scanf(const char *,...)':无法将参数1从'int'转换为'const char *'

来自分类Dev

将char *转换为int * C ++

来自分类Dev

将[Int?]转换为[Int]

来自分类Dev

错误C2664:'System :: String ^ System :: Data :: Common :: DbDataReader :: GetString(int)':无法将参数1从'const char [12]'转换为'int'

来自分类Dev

将long int转换为const time_t

来自分类Dev

无法将'int'转换为'const char *'

来自分类Dev

将vector <int>强制转换为const vector <const int>

来自分类Dev

c-将指向const int的指针转换为仅指向int的指针(并对其进行修改)

来自分类Dev

将int * const强制转换为long int * const警告

来自分类Dev

无法从int转换为int **

来自分类Dev

无法从int转换为int **

来自分类Dev

错误:无法将'int *(*)[10]'转换为'const int *(*)[10]'

来自分类Dev

C2664无法将参数1从'int'转换为'hwnd'

来自分类Dev

无法将参数1从int转换为int &&错误

来自分类Dev

错误C2664:'print_result':无法将参数1从'int(__cdecl *)(int,int,int)'转换为'int'

来自分类Dev

C / C ++将void *强制转换为int(*())(int,...);

来自分类Dev

无法将参数1从'ATL :: CComPtr <T>'转换为'int'

来自分类Dev

从int转换为c字符串(const char *)失败

来自分类Dev

C ++无法将参数1从'int **'转换为'const int **'

来自分类Dev

C ++无法将参数1的'double'转换为'double *'到'void sort(double *,int)'错误

来自分类Dev

将vector <int>强制转换为const vector <const int>

来自分类Dev

无法将参数“1”的“int*”转换为“int* (*)[9]”

Related 相关文章

  1. 1

    将Const char *转换为Unsigned long int-strtoul

  2. 2

    无法将参数1从int转换为int &&错误

  3. 3

    将const char *类型转换为int数组

  4. 4

    C ++将int转换为double

  5. 5

    无法将参数'1'的'std :: basic_string <char>'转换为'const char *'到'int system(const char *)'

  6. 6

    C ++将int转换为* LONG

  7. 7

    无法将参数1从'ATL :: CComPtr <T>'转换为'int'

  8. 8

    C ++-错误C2664:'int scanf(const char *,...)':无法将参数1从'int'转换为'const char *'

  9. 9

    将char *转换为int * C ++

  10. 10

    将[Int?]转换为[Int]

  11. 11

    错误C2664:'System :: String ^ System :: Data :: Common :: DbDataReader :: GetString(int)':无法将参数1从'const char [12]'转换为'int'

  12. 12

    将long int转换为const time_t

  13. 13

    无法将'int'转换为'const char *'

  14. 14

    将vector <int>强制转换为const vector <const int>

  15. 15

    c-将指向const int的指针转换为仅指向int的指针(并对其进行修改)

  16. 16

    将int * const强制转换为long int * const警告

  17. 17

    无法从int转换为int **

  18. 18

    无法从int转换为int **

  19. 19

    错误:无法将'int *(*)[10]'转换为'const int *(*)[10]'

  20. 20

    C2664无法将参数1从'int'转换为'hwnd'

  21. 21

    无法将参数1从int转换为int &&错误

  22. 22

    错误C2664:'print_result':无法将参数1从'int(__cdecl *)(int,int,int)'转换为'int'

  23. 23

    C / C ++将void *强制转换为int(*())(int,...);

  24. 24

    无法将参数1从'ATL :: CComPtr <T>'转换为'int'

  25. 25

    从int转换为c字符串(const char *)失败

  26. 26

    C ++无法将参数1从'int **'转换为'const int **'

  27. 27

    C ++无法将参数1的'double'转换为'double *'到'void sort(double *,int)'错误

  28. 28

    将vector <int>强制转换为const vector <const int>

  29. 29

    无法将参数“1”的“int*”转换为“int* (*)[9]”

热门标签

归档