我应该首先学习Java然后选择后续动作(构建Flash应用程序)吗?我想我问的是,Java是一种"真正的"语言,它是一个很好的基础,而且只是flash中的一个封闭语言的动作脚本.
我每次都玩了一点,但最近我把所有的时间都花在了Java上.
谢谢!
C定义了至少3个级别的"常量表达式":
6.6第3段内容如下:
常量表达式不应包含赋值,递增,递减,函数调用或逗号运算符,除非它们包含在未评估的子表达式中.
那么这意味着1,2不是一个恒定的表达式吗?
第8段内容如下:
算术常量表达式应具有算术类型,并且只能具有整数常量,浮点常量,枚举常量,字符常量和sizeof表达式的操作数.算术常量表达式中的转换运算符只能将算术类型转换为算术类型,除非作为sizeof运算符的操作数的一部分,其结果为整数常量.
什么是操作数(union { uint32_t i; float f; }){ 1 }.f?如果1是操作数,那么这可能是一个算术常量表达式,但如果{ 1 }是操作数,则显然不是.
编辑:另一个有趣的观察:7.17第3段要求结果是offsetof类型的整数常量表达式size_t,但offsetof据我所知,标准实现不需要是标准的整数常量表达式.这当然是可以的,因为允许实现(在6.6第10段下)接受其他形式的常量表达式,或者实现offsetof宏__builtin_offsetof而不是通过指针减法.但是,这种观察的本质是,如果你想offsetof在需要整数常量表达式的上下文中使用,你真的需要使用实现提供的宏而不是自己的.
Win 7/UAC让我发疯.
在我的C++应用程序中,我需要运行一个需要在Windows 7上提升的可执行文件.我想解决这个问题并等待它继续完成.最简单的方法是什么?
我通常会通过这种方式执行此类操作CreateProcess(),但对于需要提升的可执行文件,它会失败.
我尝试使用cmd.exe /c ...直通CreateProcess,它可以工作,但弹出一个丑陋的cmd终端窗口.
我正在阅读,这ShellExecute()将允许提升,但使用时等待exe完成似乎并不容易ShellExecute().像system()工作一样简单吗?
非常感谢任何其他想法!
我有一个表foo,由'created_at'分区,主键为(id,created_at).即:
CREATE TABLE `foo` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`created_at` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`bar_id` int(11) DEFAULT NULL,
...
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8
/*!50100 PARTITION BY RANGE (TO_DAYS(created_at))
(PARTITION p0 VALUES LESS THAN (733712) ENGINE = InnoDB,
PARTITION p1 VALUES LESS THAN (733773) ENGINE = InnoDB,
PARTITION p2 VALUES LESS THAN (733832) ENGINE = InnoDB,
PARTITION p3 VALUES LESS THAN (733893) ENGINE = InnoDB,
...
)
Run Code Online (Sandbox Code Playgroud)
如何创建一个bar_id在所有分区中都是唯一的唯一索引?如果我尝试类似的东西:
CREATE UNIQUE INDEX …Run Code Online (Sandbox Code Playgroud) 所以我试图在JFrame周围单击并拖动JLabel.以下代码允许在屏幕上的任何位置按下/拖动鼠标时在屏幕上移动JLabel,但我不知道如何添加第二个ActionListener以检查鼠标是否在标签上单击,假设是解决方案.
我想在屏幕上有多个JLabel,以便移动的唯一标签是鼠标单击并正在拖动的标签.
谢谢.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
@SuppressWarnings("serial")
public class test extends JFrame implements MouseMotionListener {
private JPanel panel = new JPanel(null);
private JLabel dragLabel = new JLabel("drag test");
private int mouseX = 200;
private int mouseY = 200;
public test() {
this.add(panel);
panel.setBackground(Color.WHITE);
panel.add(dragLabel);
dragLabel.setForeground(Color.RED);
dragLabel.setBounds(mouseX, mouseY, 100, 50);
panel.addMouseMotionListener(this);
}
@Override
public void mouseDragged(MouseEvent e) {
mouseX = e.getX();
mouseY = e.getY();
dragLabel.setBounds(mouseX, mouseY, 100, 50);
}
@Override
public void mouseMoved(MouseEvent e) {}
public static void …Run Code Online (Sandbox Code Playgroud) 在此之前,我想让你知道我是关于开发"付费"webapps的完全新手.我一直在阅读一些关于如何将Paypal的IPN与Google App Engine集成的帖子,我对这个主题有一些疑问,事情是这样的:
我想在我的webapp中使用paypal的"订阅"按钮(这是使用GAE的Python基础开发的),因此如果用户不想再使用免费版本,用户可以订阅高级版本...
我正在阅读,paypal可以帮助我通过IPN管理关于用户控制的事情,但我必须在我的GAE应用程序中设置它,我不知道如何......例如:
通知URL必须指向paypal的配置文件配置?我相信它必须指向我的应用程序中的python脚本但我不确定...如果这是真的,这个python脚本必须有什么?
然后,在完成之后,我如何让paypal为我的用户创建用户名和密码,以使非高级用户不受"高级功能"的影响?我不希望链接到某些东西,我需要解释如何在GAE上的基于Python的应用程序中实现"Paypal订阅服务",以便提供"高级服务"和免费服务,
谢谢,希望你能帮忙
我有一个代码段,它很简单:
for( int i = 0; i < n; ++i)
{
if( data[i] > c && data[i] < r )
{
--data[i];
}
}
Run Code Online (Sandbox Code Playgroud)
它是大型功能和项目的一部分.这实际上是对不同循环的重写,这被证明是耗时的(长循环),但我对两件事感到惊讶:
当data [i]临时存储时,如下所示:
for( int i = 0; i < n; ++i)
{
const int tmp = data[i];
if( tmp > c && tmp < r )
{
--data[i];
}
}
Run Code Online (Sandbox Code Playgroud)
它变得更慢.我并不认为这应该更快,但我不明白为什么它应该这么慢,编译器应该能够弄清楚是否应该使用tmp.
但更重要的是,当我将代码段移动到一个单独的函数时,它变得慢了四倍.我想了解发生了什么,所以我查看了opt报告,在这两种情况下,循环都是矢量化的,似乎做了同样的优化.
所以我的问题是什么可以在一个不被称为百万次的函数上产生这样的差异,但它本身是耗时的?在opt报告中要查找什么?
我可以通过保持内联来避免它,但是为什么要烦我.
更新:
我应该强调,我的主要关注点是要理解,为什么它变得更慢,当移动到一个单独的功能.使用tmp变量给出的代码示例只是我在此过程中遇到的一个奇怪示例.
我想把这个表http://www.datamystic.com/timezone/time_zones.html变成数组格式,这样我就可以用它做任何我想做的事.最好是PHP,python或JavaScript.
这是一个很大的问题,所以我不是在寻找这个特定问题的帮助,而是在寻找如何解决所有类似问题的想法.
BeautifulSoup是第一个浮现在脑海中的东西.另一种可能性是在TextMate中复制/粘贴它,然后运行正则表达式.
你有什么建议?
这是我写完的脚本,但正如我所说,我正在寻找更通用的解决方案.
from BeautifulSoup import BeautifulSoup
import urllib2
url = 'http://www.datamystic.com/timezone/time_zones.html';
response = urllib2.urlopen(url)
html = response.read()
soup = BeautifulSoup(html)
tables = soup.findAll("table")
table = tables[1]
rows = table.findAll("tr")
for row in rows:
tds = row.findAll('td')
if(len(tds)==4):
countrycode = tds[1].string
timezone = tds[2].string
if(type(countrycode) is not type(None) and type(timezone) is not type(None)):
print "\'%s\' => \'%s\'," % (countrycode.strip(), timezone.strip())
Run Code Online (Sandbox Code Playgroud)
对我的python代码的改进的评论和建议也欢迎;)
我在Java中使用String.format()试图模拟C中可用的printf()控制通道.我理解如何指定字符串应该放在一个需要20个字符的字段中,5,2 ... 3位小数,2位等.但是,字符串在其字段中右对齐打印.
如何左对齐字符串?
这是一个可能的输出示例,我想修改为左对齐EXECUTING和CREATED它们的字段.
Process PID: 25 Status: ----------- EXECUTING
Process PID: 36 Status: READY-SUSPENDED
Process PID: 4 Status: ---------------- CREATED
Run Code Online (Sandbox Code Playgroud)
*注意:将' - '视为空白区域
我是否可以通过浏览器网页和JavaScript以编程方式访问智能手机的传感器(例如Android或iPhone设备上的加速度计,指南针等)?我知道W3C设备标准可以允许访问摄像头.