小编ra1*_*ter的帖子

如何禁用NSScrollView的水平滚动?

我首先尝试通过设置禁用滚动条:

scrollView!.hasHorizontalScroller = false
Run Code Online (Sandbox Code Playgroud)

可以成功运行,但是我仍然可以使用触控板从左向右滚动。有没有一种方法可以确保完全禁用NSScrollView对象的水平滚动?

cocoa nsscrollview swift

6
推荐指数
2
解决办法
4303
查看次数

抛出C++标准库中定义的异常是否可以?

我想知道是否可以抛出C++标准库中定义的异常,而不是创建我自己的类.例如,让我们考虑以下(愚蠢)函数,它将一个字符串作为参数:

#include <stdexcept> 
#include <iostream>
#include <string>

bool useless_function(const std::string& str) {
    if (str == "true")
        return true;

    else if (str == "false")
        return false;

    else
        throw std::invalid_argument("Expected argument of either true or false");
}
Run Code Online (Sandbox Code Playgroud)

当然,我们可以这样做:

int main(int argc, const char** argv) {
    try {
        const bool check = useless_function("not true");
    }

    catch (std::invalid_argument& error) {
        std::cerr << error.what() << '\n';
    }

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

我读到这里,该std::stoi系列函数抛出一个std::invalid_exception异常,当他们收到了无效的参数; 这就是上述想法的来源.

c++ exception-handling exception

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

为什么在C++中使用<cstdio>而不是<stdio.h>时,"std :: printf"和"printf"都会编译?

据我所知,表单的标题cxyz是相同的,xyz.h唯一的区别是cxyz放置xyz.h名称空间下的所有内容std.为什么以下程序都在GCC 4.9和clang 6.0上编译?

#include <cstdio>

int main() {
    printf("Testing...");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

和第二个程序:

#include <cstdio>

int main() {
    std::printf("Testing...");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

FILE结构也是如此:

FILE* test = fopen("test.txt", "w");
Run Code Online (Sandbox Code Playgroud)

std::FILE* test = std::fopen("test.txt", "w");
Run Code Online (Sandbox Code Playgroud)

都工作.

到现在为止,我一直认为这是更好地使用cstdio,cstring等等,而不是他们的非命名空间的同行.但是,以上两个以上哪个程序是更好的做法?

其他C函数也是如此,例如memset(来自cstring),scanf(也来自cstdio)等.

(我知道有些人会问为什么我在C++程序中使用C IO;这里的问题不是专门的C IO,而是std::在调用命名空间C函数之前是否应该编译而没有特别指定.)

c++ namespaces header-files

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

什么是.app中的Assets.car文件?

我正在查看我的应用程序的内容,并在我的应用程序的resources文件夹中找到了文件Assets.car以及一些nib:

Assets.car文件

我的问题是:这个文件是什么以及它与应用程序有什么关系?它包含哪些数据?

macos cocoa

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