小编Ric*_*ich的帖子

我为什么要在Git中使用core.autocrlf = true?

我有一个从Windows和OS X访问的Git存储库,我知道已经包含一些带有CRLF行结尾的文件.据我所知,有两种方法可以解决这个问题:

  1. 设置core.autocrlffalse无处不在,

  2. 按照指示在这里(回荡在GitHub上的帮助页)到存储库转换为只包含LF行结束,然后设置core.autocrlftrue在Windows和input在OS X上有这样做的问题是,如果我有仓库中任何二进制文件那:

    1. 在gitattributes中未正确标记为二进制文件,并且
    2. 碰巧包含CRLF和LF,

    他们会被腐化.我的存储库可能包含这些文件.

那么为什么我不应该关闭Git的行结束转换呢?网上有很多模糊的警告关于core.autocrlf关闭造成问题,但很少有具体问题; 到目前为止我唯一发现的是kdiff3无法处理CRLF结尾(对我来说不是问题),而且一些文本编辑器有行结束问题(对我来说也不是问题).

存储库是我公司的内部存储库,因此我不需要担心与具有不同autocrlf设置或行结束要求的人共享它.

是否有任何其他问题只是留下我不知道的行结尾?

git line-endings

272
推荐指数
3
解决办法
23万
查看次数

Visual Studio 2010中是否有编译器设置以确保可移植C++的编写?

我从使用Visual Studio 2010编译的开发人员那里收到C++源代码,然后我需要在各种不同的编译器下重新编译:GCC,LLVM,其他版本的Visual Studio等.有时候他发送给我的代码(编译时没有编译) VS2010中的警告无法在其他编译器下编译.

他可以在VS2010中设置任何编译器设置,以增加他的代码可以轻松移植的可能性吗?

c++ portability compiler-errors visual-studio-2010 visual-studio

8
推荐指数
1
解决办法
231
查看次数

是否可以从使用Android NDK构建的共享库中删除符号?

我正在构建一个共享库,以便在使用Android NDK的Java应用程序中使用.使用readelf来检查lib/armeabi-v7a/libXXXlib.so由发布版本生成的文件,它似乎包含我的家乡C/C++代码的所有符号(函数,变量名).

实际上,共享对象文件对于调试和发布版本似乎是相同的.(在输出唯一的区别libs文件夹是是否将gsb.setupgdbserver正在创建的文件.)我重写优化利用NDK与设置APP_CFLAGS += -O3在我Application.mk,但我不希望发布版本通过生成调试符号包括-g它所做的旗帜.

我在SO上发表评论说'在这两种情况下,调试和发布,它会留下-g标志,因为引用注释,"我们生成二进制文件的符号版本,当它们被复制到最终项目时会被剥离libs /目录"',另一个说明:'如果没有名字,JNI找不到java的函数.'

ndk-build肯定obj/armeabi-v7a/libXXXlib.so文件中剥离了一些东西,因为它比最终创建的东西大得多libs,但它似乎仍然在文件中保留我的所有函数和变量的名称.

JNI 是否需要我所有的函数名称(而不仅仅是本机代码的入口点)?

如果没有,我该如何删除不需要的符号?

java-native-interface android debug-symbols release-builds android-ndk

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

无法解除从iOS 8中的UIDocumentInteractionController调用的电子表格

我有一个非常简单的测试应用程序,其中只包含以下代码,附加到UIButton:

- (IBAction)buttonUp:(id)sender {

  // Build file path
  NSString* filePath = [[NSBundle mainBundle] pathForResource:@"testfile"
                                                       ofType:@"txt"];

  NSURL *url = [NSURL fileURLWithPath:filePath];

  m_interactionController = [UIDocumentInteractionController interactionControllerWithURL:url];

  [m_interactionController presentOptionsMenuFromRect:CGRectMake(200, 200, 100, 100)
                                               inView:[self view]
                                             animated:YES];
}
Run Code Online (Sandbox Code Playgroud)

这构建没有问题,并在iOS 7(在第4代iPad:A1458)下运行,这个代码工作正常.

问题是,在iOS 8 Beta 5中,如果用户从中选择"邮件" UIDocumentInteractionController,则显示的电子邮件表永远不会被删除.点击发送确实发送邮件,但电子表格继续显示.点击取消并选择删除或保存草稿无效.

使用Xcode 5.1.1构建测试应用程序时会出现此问题.但是,如果应用程序是使用Xcode 6 GM构建的,则不会出现问题,并且代码工作正常.

上面的代码有什么问题吗?

cocoa-touch ios uidocumentinteraction ios7 ios8

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

如何在OpenGL ES 2.0中使用Alpha混合透明度?

我正在将一些代码从OpenGL ES 1.x移植到OpenGL ES 2.0中,而我正在努力让透明度像以前一样工作; 我的所有三角形都呈现为完全不透明.

我的OpenGL设置有以下几行:

// Draw objects back to front
glDisable(GL_DEPTH_TEST);

glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);

glDepthMask(false);
Run Code Online (Sandbox Code Playgroud)

我的着色器看起来像这样:

attribute vec4 Position;
uniform highp mat4 mat;
attribute vec4 SourceColor;
varying vec4 DestinationColor;

void main(void) {
  DestinationColor = SourceColor;
  gl_Position = Position * mat;
}
Run Code Online (Sandbox Code Playgroud)

还有这个:

varying lowp vec4 DestinationColor;

void main(void) {
  gl_FragColor = DestinationColor;
}
Run Code Online (Sandbox Code Playgroud)

怎么可能出错?

EDIT: If I set the alpha in the fragment shader manually to 0.5 in the fragment shader (or indeed in the vertex shader) …

transparency alpha opengl-es opengl-es-2.0

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

上传到iOS App Store时出错:ERROR ITMS-9000"此捆绑包无效"

当我们尝试将新版本的应用程序上传到Apple的App Store时,我们在Application Loader中收到以下错误:

ERROR ITMS-9000: "This bundle is invalid. New apps and app updates submitted to the App Store
must be built with public (GM) versions of Xcode 5 and iOS 7 SDK. Do not submit apps built with
beta software." at SoftwareAssets/SoftwareAsset (MZItmspSoftwareAssetPackage)
Run Code Online (Sandbox Code Playgroud)

我们已经使用最新版本的Xcode,5.1.1(从Mac App Store下载)和iOS SDK的v7.1(随Xcode 5.1.1一起提供)构建.

我们的应用程序是用Marmalade 7.2.1构建的.我们已经尝试重建我们的应用程序使用的所有EDK扩展和静态库.

怎么可能出错?有没有其他人可以告诉我们有关错误的信息,以帮助我们追踪它?

app-store ios application-loader marmalade xcode5

5
推荐指数
2
解决办法
6429
查看次数

更改superview会破坏UIPanGestureRecognizer

我正在尝试实现一个可以拖出超级视图的UIView.

我尝试添加一个UIPanGestureRecognizer我希望能够拖动的视图.然而,似乎将UIView从其超级视图中移除并将其添加到另一个视图中,正在破坏手势识别器.

使用UIGestureRecognizerStateBegan注释掉的代码,其他两个块中的代码可以正常运行,但是当我恢复它时,永远不会实现UIGestureRecognizerStateChanged和UIGestureRecognizerStateEnded状态.

出了什么问题?

if ([gr state] == UIGestureRecognizerStateBegan)
{
    CGPoint newCenter = [endView convertPoint:[self center]
                                     fromView:startView];
    [self removeFromSuperview];
    [endView addSubview:self];
    [self setCenter:newCenter];

}

if ([gr state] == UIGestureRecognizerStateChanged)
{
    // Some code that successfully moves the view.
}

if ([gr state] == UIGestureRecognizerStateEnded)
{
    // Other code.
}
Run Code Online (Sandbox Code Playgroud)

uiview superview ios uipangesturerecognizer

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

如何并排放置 <dt> 和 <dd> 的定义列表,但如果 <dt> 变长,则 <dd> 会向下移动?

我想布局一个定义列表,<dl>其中<dt>元素位于一列中,而相应的<dd>元素位于另一列中。

棘手的部分是我希望我的<dt>s 永远不会换行,如果它们对于第一列来说太宽,我希望元素向下<dd>移动以腾出空间:

这是我的目标的屏幕截图:

如上所述,期望的结果

这是 ASCII 艺术版本:

first dt     first dd goes here and can be any length

second dt    second dd is here and also any length

a much longer dt that overlaps
             third dd moves down to make room

last dt      last dd
Run Code Online (Sandbox Code Playgroud)

我得到的最接近的是使用 flexbox 并排放置元素,然后手动调整<dd>附加到长<dt>元素的元素的位置:

first dt     first dd goes here and can be any length

second dt    second dd is here …
Run Code Online (Sandbox Code Playgroud)

html css html-lists

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