小编Jes*_*der的帖子

为什么调用此函数会改变我的数组?

每当我读取文件时,Perl似乎都在杀死我的数组:

my @files = ("foo", "bar", "baz");
print "Files: " . join(" ", @files) . "\n";

foreach(@files) {
   print "The file is $_\n";
   func();
}

sub func {
   open(READ, "< test.txt");
   while(<READ>) {
   }
   close READ;
}

print "Files: " . join(" ", @files) . "\n";
Run Code Online (Sandbox Code Playgroud)

生产:

Files: foo bar baz
The file is foo
The file is bar
The file is baz
Files:
Run Code Online (Sandbox Code Playgroud)

但是当我发表评论时func(),它给出了我所期望的:

Files: foo bar baz
The file is foo
The file is bar
The …
Run Code Online (Sandbox Code Playgroud)

arrays perl file

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

令人困惑的gprof输出

根据我的说法,我运行gprof了一个C++程序,我得到了第一行输出:16.637stime()

%   cumulative   self              self     total           
time   seconds   seconds    calls   s/call   s/call  name    
31.07      0.32     0.32  5498021     0.00     0.00  [whatever]
Run Code Online (Sandbox Code Playgroud)

为什么31.07%它只花了.32几秒钟的时间列表?这是一次通话时间吗?(这不是自我/电话吗?)

这是我第一次使用gprof,所以请善待:)

编辑:通过向下滚动,似乎gprof认为我的程序需要1.03秒.为什么会这么错呢?

c++ optimization profiling gprof

4
推荐指数
2
解决办法
9882
查看次数

NSDate init问题,与Objective-C中的内存管理有关

我有一个NSDate创建的对象

NSDate *date = [[NSDate alloc] init];
Run Code Online (Sandbox Code Playgroud)

后来,我想把日期重置为"现在",所以我想到了

[date init];
Run Code Online (Sandbox Code Playgroud)

要么

date = [date init];
Run Code Online (Sandbox Code Playgroud)

可能会做这个工作,但他们没有.代替,

[date release];
date = [[NSDate alloc] init];
Run Code Online (Sandbox Code Playgroud)

作品.我对此有点困惑,因为在文档中- (id) init,它说:

返回初始化为当前日期和时间的NSDate对象.

既然date已经分配了,它不应该只需要一条init消息吗?

memory-management initialization objective-c nsdate

4
推荐指数
2
解决办法
6787
查看次数

使用alpha渲染纹理问题

当我渲染到纹理,然后绘制相同的图像时,它似乎使一切变得更暗.要获得此图像:

http://img24.imageshack.us/img24/8061/87993367.png

我将左上角的正方形(1, 1, 1, .8)渲染为纹理,然后渲染该纹理,再将中间正方形(相同的颜色)渲染到另一个纹理,最后将该纹理加上右下方(相同的颜色)到屏幕.

正如你所看到的,每次渲染到纹理时,一切都会变得更暗.

我的渲染到纹理代码看起来像:(我在iPhone上使用OpenGL ES)

// gen framebuffer
GLuint framebuffer;
glGenFramebuffersOES(1, &framebuffer);
glBindFramebufferOES(GL_FRAMEBUFFER_OES, framebuffer);

// gen texture
GLuint texture;
glGenTextures(1, &texture);

glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D, texture);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, 0);
glBindTexture(GL_TEXTURE_2D, 0);
glDisable(GL_TEXTURE_2D);

// hook it up
glFramebufferTexture2DOES(GL_FRAMEBUFFER_OES, GL_COLOR_ATTACHMENT0_OES, GL_TEXTURE_2D, texture, 0);
if(glCheckFramebufferStatusOES(GL_FRAMEBUFFER_OES) != GL_FRAMEBUFFER_COMPLETE_OES))
   return false;

// set up drawing
glBindFramebufferOES(GL_FRAMEBUFFER_OES, framebuffer);
glViewport(0, 0, Screen::Width, Screen::Height);

glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0, Screen::Width, 0, Screen::Height, -1, 1); …
Run Code Online (Sandbox Code Playgroud)

alpha opengl-es render-to-texture

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

使用工厂模式按名称实例化类

假设我有一个A, B, C, ...所有继承的类列表Base.

我从类用户获取类名作为字符串,我想实例化正确的类并返回指向Base.你会如何实现这个?

我想过使用一个以类名作为键的哈希表,以及一个函数指针,该函数指向实例化正确类并返回一个的函数Base *.

但是,我想我可以在这里使用工厂模式并使其更容易,但我不能很好地记住它,所以我虽然我会寻求建议.

c++ design-patterns class

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

如何阻止UITextField响应摇动手势?

默认情况下,如果您在输入文本时摇动iPhone UITextField,则会出现一个小框,询问您是否要撤消输入.我怎样才能防止这种情况发生?我查看了UITextField,UITextFieldDelegateUITextInputTraits文档,发现没有任何关于摇晃的内容.

据推测,我可以继承UITextField忽略震动事件,但我对自己不能搞砸其他事情的能力并不完全有信心.我喜欢类似的东西

textField.respondsToShake = FALSE;
Run Code Online (Sandbox Code Playgroud)

最好的方法是什么?

iphone objective-c uitextfield shake

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

模板:名称解析:实例化点: - >任何人都可以告诉更多这个语句的例子吗?

这是ISO C++标准14.6.4.1实例化的声明

  1. 对于函数模板特化,成员函数模板特化,或成员函数或类模板的静态数据成员的特化,如果特化是隐式实例化的,因为它是从另一个模板特化和其中的上下文中引用的引用依赖于模板参数,专门化的实例化点是封闭专门化的实例化点.否则,这种特化的实例化点紧跟在引用特化的命名空间范围声明或定义之后.

  2. 如果以使用该函数模板或成员函数的默认参数的定义的方式调用类模板的函数模板或成员函数,则默认参数的实例化点是函数模板的实例化点或成员职能专业化.

  3. 对于类模板特化,类成员模板特化或类模板的类成员的特化,如果特化是隐式实例化的,因为它是从另一个模板特化中引用的,如果引用特化的上下文取决于在模板参数上,如果在
    封闭模板的实例化之前未实例化特化,则实例化的点紧接在封闭模板的实例化之前.否则,这种特
    化的实例化点紧接在引用特化的命名空间范围声明或定义之前.

我无法为整个部分编写程序.我试图从昨天开始编写本节目的程序.

任何人都可以为我提供一些代码供这些部分理解.

请,通常..我试着问一个或多个积分.在任何部分.但是这里我无法理解本节中的一点.

所以,任何人都可以为我提供一个代码(程序)供本部分理解.

c++ templates

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

如何在 Angular 中使用 mat-text-column

你如何从 HTML 中设置dataAccessorin mat-text-column?该文档不包含任何示例。请注意,的签名dataAccessor是一个函数:

dataAccessor: (data: T, name: string) => string; 
Run Code Online (Sandbox Code Playgroud)

angular-material angular

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

C++:与另一个应用程序通信的最常见方式

在简单的轮廓中,我有一个应用程序,它在启动时查看目录并创建特殊文件的索引 - 之后它就像守护进程一样工作.另一个应用程序创建这样的"特殊"文件并将它们放在某个目录中.通知第一个应用程序有关新文件(索引它)的方法是最常见,最简单(第一个是运行时,所以它不应该减慢太多),如果可能的话,跨平台?

我看过RPC和IPC,但它们太重了(也非跨平台和慢(需要很多功能才能工作 - 我需要一个简单的轻松工作方式),可能).

c++ api

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

如何防止我的应用程序在iPhone上的后台运行

当按下主页按钮时,有没有办法让应用程序退出而不是去后台?出于安全原因,如果应用程序不在后台运行但在推送主页时实际关闭会更好.这不是用户的安全性,而是用于应用程序上的公司数据,因此不是用户的选择.除了强迫退出之外,我找不到任何退出方式,苹果不鼓励这样做.

iphone

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