我试图弄清楚如何通过鼠标拖动上下移动预先填充的列表框中的项目.
我从microsoft的api看过Control.DoDragDrop方法,但我仍然无法做任何事情.
我很感激任何帮助,因为我是视觉工作室环境的新手.
我正在关注这个Rails教程.当我在本地运行rails服务器时,我可以看到"Welcome Aboard"页面.但是,在部署到Heroku时,它会显示"您正在查找的页面不存在".我已经四处寻找,但找不到任何可以解决我问题的方法.以下是我的步骤:
rails new first_app
Run Code Online (Sandbox Code Playgroud)
对Gemfile进行此更改:
group :production do
gem 'pg'
end
group :development do
gem 'sqlite3'
end
Run Code Online (Sandbox Code Playgroud)
然后,
bundle update
bundle install
bundle install --without production
rake assets:precompile
git init
git add .
git commit -m "initial commit"
heroku login
heroku create
git push heroku master
heroku open
Run Code Online (Sandbox Code Playgroud)
此时,它会打开heroku应用程序的地址,并显示"不存在"错误.检查'heroku logs'时,它显示我访问的状态= 404:

我有一个简单的OpenGL程序,我试图利用顶点缓冲区对象进行渲染而不是旧的glBegin() - glEnd().基本上用户点击指示起点的窗口,然后按下一个键以生成OpenGL作为一行绘制的后续点.
我已经使用glBegin()和glEnd()实现了这个,但是使用VBO还没有成功.我想知道问题是,在我初始化VBO之后,我添加了更多没有分配内存的顶点,因此不会显示它们.
编辑:另外,我对它如何确切知道顶点结构中哪些值用于x和y以及r,g,b有点困惑.我未能找到一个明确的例子.
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <Math.h>
#include <iostream>
#include <vector>
#include <GL/glew.h>
#include <GL/glut.h>
struct vertex {
float x, y, u, v, r, g, b;
};
const int D = 10; // distance
const int A = 10; // angle
const int WINDOW_WIDTH = 500, WINDOW_HEIGHT = 500;
std::vector<vertex> vertices;
boolean start = false;
GLuint vboId;
void update_line_point() {
vertex temp;
temp.x = vertices.back().x + D * vertices.back().u;
temp.y = vertices.back().y + D …Run Code Online (Sandbox Code Playgroud) 我想用Linux中的C++连接到mysql数据库.在我的本地机器上,我正在运行Ubuntu,并安装了mysql服务器和客户端软件包:
sudo apt-get install mysql-server mysql-client
我遇到了Mysql ++,但是从他们的二进制包运行./configure时遇到了一些问题.错误说:
检查MySQL库目录... configure:错误:在'/ usr/lib64/usr/lib/usr/lib64/mysql/usr/lib/mysql/usr/local/lib64/usr/local中找不到mysqlclient库/ lib/usr/local/lib/mysql/usr/local/mysql/lib/usr/local/mysql/lib/mysql/usr/mysql/lib/mysql/opt/mysql/lib/opt/mysql/lib/mysql/sw/lib/sw/lib/mysql'
我看到我可以使用此命令指定路径:
./configure --with-mysql-lib =/...
但我不知道在哪里指出它.我使用whereis mysql但找不到任何包含lib子目录的mysql目录.mysqlclient库在哪里安装?
编辑:
找到之后libmysqlclient我回来了
/usr/lib/i386-linux-gnu/libmysqlclient.so.18
/usr/lib/i386-linux-gnu/libmysqlclient.so.18.0.0
/usr/lib/i386-linux-gnu/libmysqlclient_r.so.18
/usr/lib/i386-linux-gnu/libmysqlclient_r.so.18.0.0
/usr/share/doc/libmysqlclient18
/usr/share/doc/libmysqlclient18/changelog.Debian.gz
/usr/share/doc/libmysqlclient18/copyright
/var/cache/apt/archives/libmysqlclient18_5.5.22-0ubuntu1_i386.deb
/var/lib/dpkg/info/libmysqlclient18:i386.list
/var/lib/dpkg/info/libmysqlclient18:i386.md5sums
/var/lib/dpkg /info/libmysqlclient18:i386.postinst
/var/lib/dpkg/info/libmysqlclient18:i386.postrm
/var/lib/dpkg/info/libmysqlclient18:i386.shlibs
所以,我试过./configure --with-mysql-lib=/usr/lib/i386-linux-gnu ,似乎完成没有任何抱怨.
虽然这解决了完成./configure完成的问题,但我仍然有进一步的麻烦.当我运行的make东西一直很好,直到这一点:
在./lib/sql_buffer.h:31:0中包含的文件中,来自./lib/sql_buffer.cpp:26:./lib/refcounted.h:258:2:错误:'size_t'没有命名类型. /lib/refcounted.h:在构造函数'mysqlpp :: RefCountedPointer :: RefCountedPointer()':./ lib/refcounted.h:89:2:error:class'mysqlpp :: RefCountedPointer'没有任何名为'refs_的字段'./lib/refcounted.h:在构造函数'mysqlpp :: RefCountedPointer :: RefCountedPointer(T*)':./ lib/refcounted.h:100:2:error:class'mysqlpp :: RefCountedPointer'没有任何名为'refs_'./lib/refcounted.h:104:4的字段:错误:'refs_'未在此范围内声明./lib/refcounted.h:104:16:错误:'size_t'之前的预期类型说明符./lib/refcounted.h:104:16:错误:预期';' 在'size_t'之前./lib/refcounted.h:在构造函数'mysqlpp :: RefCountedPointer :: RefCountedPointer(const ThisType&)':./ lib/refcounted.h:112:2:error:class'mysqlpp :: RefCountedPointer'没有任何名为'refs_'./lib/refcounted.h:115:8的字段:错误:'refs_'未在此范围内声明./lib/refcounted.h:在析构函数'mysqlpp :: RefCountedPointer :: ~RefCountedPointer ()':./ lib/refcounted.h:125:7:错误:'refs_'未在此范围内声明./lib/refcounted.h:在成员函数'void mysqlpp :: RefCountedPointer :: …
我试图用反向传播实现一个双层感知器来解决奇偶校验问题.网络有4个二进制输入,第一层有4个隐藏单元,第二层有1个输出.我使用它作为参考,但遇到了收敛问题.
首先,我将注意到我使用sigmoid函数进行激活,因此衍生物(根据我的理解)sigmoid(v)*(1 - sigmoid(v)).因此,在计算delta值时使用.
所以,基本上我设置网络并运行几个时期(遍历每个可能的模式 - 在这种情况下,16种输入模式).在第一个纪元之后,重量略有变化.在第二次之后,无论我运行多少个时代,权重都不会改变并保持不变.我现在使用的学习率为0.1,偏差为+1.
训练网络的过程在伪代码下面(根据我检查的来源,我认为这是正确的):
前馈步骤:
v = SUM[weight connecting input to hidden * input value] + bias
y = Sigmoid(v)
set hidden.values to y
v = SUM[weight connecting hidden to output * hidden value] + bias
y = Sigmoid(v)
set output value to y
Run Code Online (Sandbox Code Playgroud)
输出层的反向传播:
error = desired - output.value
outputDelta = error * output.value * (1 - output.value)
Run Code Online (Sandbox Code Playgroud)
隐藏层的反向传播:
for each hidden neuron h:
error = outputDelta * weight connecting h to output …Run Code Online (Sandbox Code Playgroud) 我有一个C++程序在Linux上运行在其中创建一个新的线程做一些计算成本的工作独立于主线程(计算工作由结果写入文件,它最终会被非常大的完成).但是,我的表现相对较差.
如果我直接实现程序(不引入其他线程),它将在大约2小时内完成任务.使用多线程程序,执行相同的任务大约需要12个小时(仅在生成一个线程的情况下进行了测试).
我已经尝试了一些东西,包括pthread_setaffinity_np将线程设置为单个CPU(在我正在使用的服务器上可用的24个),以及pthread_setschedparam来设置调度策略(我只尝试过SCHED_BATCH) ).但到目前为止,这些影响可以忽略不计.
这种问题是否有任何一般原因?
编辑:我添加了一些我正在使用的示例代码,希望是最相关的部分.函数process_job()实际上是计算工作的功能,但这里包含的内容太多了.基本上,它读入两个数据文件,并使用它们对内存中的图形数据库执行查询,其中结果在几个小时内写入两个大文件.
编辑第2部分:只是为了澄清,问题不在于我想使用线程来提高我所拥有的算法的性能.但是,我想同时运行我的算法的许多实例.因此,我希望算法在放入线程时以类似的速度运行,就像我根本不使用多线程一样.
编辑第3部分:感谢所有建议.我正在进行一些单元测试(看哪些部件正在减速),正如一些人所建议的那样.由于程序需要一段时间才能加载和执行,因此需要花时间查看测试中的任何结果,因此我对迟到的响应表示道歉.我认为我想澄清的主要观点是线程可能导致程序运行缓慢的可能原因.从我从评论中收集的内容来看,它根本就不应该.当我能找到合理的分辨率时,我会发布,再次感谢.
(最终)编辑第4部分:事实证明问题与线程无关.在这一点上描述它会过于繁琐(包括使用编译器优化级别),但是这里发布的想法非常有用并受到赞赏.
struct sched_param sched_param = {
sched_get_priority_min(SCHED_BATCH)
};
int set_thread_to_core(const long tid, const int &core_id) {
cpu_set_t mask;
CPU_ZERO(&mask);
CPU_SET(core_id, &mask);
return pthread_setaffinity_np(tid, sizeof(mask), &mask);
}
void *worker_thread(void *arg) {
job_data *temp = (job_data *)arg; // get the information for the task passed in
...
long tid = pthread_self();
int set_thread = set_thread_to_core(tid, slot_id); // assume slot_id is 1 (it is in the test case I run)
sched_get_priority_min(SCHED_BATCH); …Run Code Online (Sandbox Code Playgroud) 我有一个字符串,我需要使用javascript解析成图形(DAG)数据结构.数据结构中包含我应该存储的一些属性,例如节点的id,名称以及如果链接存在于另一个节点,则给予链接的标签.所以,一个例子就是
Node1 (id: 1, name: 'first') --('link name')--> Node2 (id:....)
Run Code Online (Sandbox Code Playgroud)
等等.一旦创建了数据结构,除了读取它之外,我不需要再对它进行任何操作(稍后我将使用它来渲染d3的可视化).节点数量不会很多,因为其中一些节点是共享的.
我想象一个邻接列表,但我不确定如何在javascript中编码.例如,我知道一个json对象可以有一个"field":"value"结构,但我可以用Object:[相邻对象列表]吗?
我不太熟悉c ++以及实例化对象是如何工作的,所以这可能是一件非常简单的事情.当我用g ++编译时,我得到错误"未定义引用'Foo :: Foo(std :: string)'".我想创建一个类Foo的实例,它的构造函数中有一个字符串参数.这是代码:
#include <string>
using namespace std;
class Foo
{
public:
Foo(string s);
private:
string id;
};
Run Code Online (Sandbox Code Playgroud)
#include <string>
#include "Foo.h"
using namespace std;
Foo::Foo(string s)
{
id = s;
}
Run Code Online (Sandbox Code Playgroud)
#include <string>
#include "Foo.h"
using namespace std;
int main()
{
Foo foo("bar");
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我正在使用 Redhat Linux 服务器。几个月前,我用 PHP5 编写了一个简单的用户注册系统,使用电子邮件作为验证。我记得当时它正在工作。然而,最近测试系统后,我发现电子邮件实际上并未发送(我尝试了来自不同域的几个电子邮件地址,并检查了垃圾邮件文件夹)。
作为测试用例,我尝试了下面的简单代码(使用我的实际电子邮件地址作为 $to):
<html>
<head>
<title>Sending email using PHP</title>
</head>
<body>
<?php
$to = "myemail@gmail.com";
$subject = "Subject";
$message = "Message";
$header = "From:webmaster@mydomain.com \r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "Content-type: text/html\r\n";
$ret = mail ($to,$subject,$message,$header);
if( $ret == true )
{
echo "Message sent successfully.";
}
else
{
echo "Message could not be sent.";
}
?>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
它回显“消息发送成功”。我还尝试使用PHPMailer,它给出了一条成功的消息(我相信他们的实现也使用了 mail() 函数)。
查看php.ini,有以下内容:
[mail function]
SMTP = localhost
smtp_port = 25
sendmail_path …Run Code Online (Sandbox Code Playgroud) 我正在开发基于3D平铺的策略游戏,并且已经读过实现VBO将显着提高游戏的帧速率并降低CPU使用率(听起来不错吧?).但是,在我看过的教程中,我无法理解如何实现它.有没有人有这方面的经验,可以指向一个可靠的来源或提供实际工作的示例代码?谢谢!