【发布时间】:2017-11-22 01:04:18
【问题描述】:
我正在尝试将 NDK 与 Android Studio 一起使用来编译我的 C++ 代码。 在我的 C++ 代码中,我有几个图像数据头,其中存储了非常大的无符号字符数组。我可以毫无问题地使用独立的 NDK 编译代码。
但是在 Android Studio 内部,如果我包含这些图像数据头文件,Android Studio 将在 100% CPU 负载下冻结。
我在 Android Studio 中是否缺少某个设置?我应该如何解决这个问题?我想在 Android Studio 中编译代码,所以我可以在 C++ 代码中单步执行。并且,图像数据应该在程序内部编译(不是单独的文件)。
更新
现在,我尝试在包含头文件之前的 cpp 中使用 #pragma 一次(而不是在头文件中定义),它会起作用。但是,如果我将包含保护或 #pragma 放在标题中,Android Studio 仍将冻结。我不明白为什么 pragma once 和 include 守卫如果我放在标题中就不起作用。
【问题讨论】:
-
真的会结冰吗?你让它编译足够长(24 小时)吗?
-
非常大到底有多大? 97000 行数组数据非常庞大,您已经说过一对。你在为 Android 写什么样的内存猪?
-
头文件为7.3MB,包含1个无符号字符数组
-
您可能包含另一个包含当前标头的标头,而没有使用
#pragma once或其他保护。 -
而且,我有 2 个这样的头文件。我没有使用过#pragma 一次。我现在就试试
标签: c++ android-ndk android-studio-3.0