小编Cen*_*Can的帖子

如何制作一个"别再问我"对话框弹出框?Android的

我正在尝试创建一个"提示"对话框,通知用户在手机上启用GPS会降低电池寿命.我希望它弹出,但有一个复选框,上面写着:"别再问我了".

如何在Android中创建此功能?

谢谢,

Zukky.

AlertDialog.Builder prompt = new AlertDialog.Builder(this); 
prompt.setCancelable(false); 
prompt.setTitle("Warning"); 
prompt.setMessage ("HINT: Otherwise, it will use network to find" + 
                   "your location. It's inaccurate but saves on " + 
                   "battery! Switch GPS on for better accuracy " + 
                   "but remember it uses more battery!");
Run Code Online (Sandbox Code Playgroud)

java android

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

const输入与非const输出

我有一个遍历对象树的函数,不会修改树中的任何对象.

该函数看起来像这样:

static Node* findMatchingNode(const Node& root, const SomeFilterData& d);

struct Node {
   Node* left;
   Node* right;
};
Run Code Online (Sandbox Code Playgroud)

该函数可以返回树中的根或任何对象,也可以不返回任何对象.很明显,与给定声明相比,我必须在某处执行const_cast,在大多数情况下这是禁止的.

函数是否可以保证constness并同时允许任何人修改其输出?

编辑.我没有明确说明,我的函数确实没有修改树中的任何节点,也没有创建新的Node,它是纯函数.我想在const那里总是有限定符,告诉每个人该功能不会修改任何东西

编辑.后面的潜在问题是,在函数执行期间(并且仅在函数内部)没有强制输出常量的情况下,没有合法的方式来表达输入的常量.

c++

15
推荐指数
2
解决办法
851
查看次数

Apple clang-703.0.29如何在C++ 1x支持方面回溯到clang发行版?

我想将Xcode附带的Apple铿锵声映射回官方的clang功能列表.

但我无法将这两者联系起来.版本模糊不清.

有办法告诉吗?

clang c++11 c++14 xcode7

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

为什么main方法不会从catch块中捕获未捕获的异常

我在学习OCPJP认证的模拟考试时想出了这个例子,
(来自http://www.certpal.com 1.6版考试第3部分,流​​程控制,问题8)

public class Oak 
{
    public static void main(String args[])  
    {
        try
        {
            Integer i =null;
            i.toString();
        }
        catch (Exception e)
        {
            try
            {
                System.out.println("One ");
                Integer i =null;
                i.toString();                
            }
            catch (Exception x)
            {
                System.out.println("Two ");
                Integer i =null;
                i.toString();                   
            }
            finally
            {
                System.out.println("Three ");
                Integer i =null;
                i.toString();                            
            }
        }
        finally
        {
            System.out.println("Four ");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我完全知道finally块总是执行,除非有一个System.exit(),所以我跟踪了程序,并确定它将有一个像这样的输出

线程"main"中的两个异常java.lang.NullPointerException线程"main"中的三个异常java.lang.NullPointerException四

但是,事实证明输出正确(根据网站和Eclipse调试)

线程"main"java.lang.NullPointerException中的一个二三四异常

我不理解的是,在带有"两个"的catch块中发生的异常在哪里去了?

在它下面没有捕获块,它不应该被主线程抛出吗?因为它没有被捕获?

java exception-handling exception try-catch nullpointerexception

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