小编Bri*_*ell的帖子

这是有效的C++吗?

struct SomeStruct
{
  int a; 
  int b;
};

SomeStruct someFn( int init )
{
  SomeStruct ret = { init, init };
  //...
  return ret;
}

void someFn2( SomeStruct* pStruct )
{
  // ..
}

int main( )
{
  someFn2( &someFn(32) );
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ compiler-construction standards

2
推荐指数
3
解决办法
305
查看次数

为什么Ruby的选择不返回套接字?

我试图在Ruby上使用STDIN和TCP套接字上的select,但由于某种原因,select返回的值似乎永远不会匹配其中一个选项; 它看起来像是被返回的套接字,但它使用==(或等于?)不匹配.任何人都可以告诉我为什么从select返回的结果与我传入的对象不匹配,以及我在这里应该采取哪些不同的做法?

server = TCPSocket::new("irc.freenode.net", 7000)
server.puts "NICK MyBot"
server.puts "USER #{ENV['USER']} 0 * :My Bot"

# <snip definitions>

while (!$done)
  results = select([server, STDIN], nil, nil)
  if results[0] == STDIN
    puts "Reading from STDIN"
    execute_command
  elsif results[0] == server
    puts "Reading from server"
    receive_data
  else
    puts "Something's wrong... results[0]: #{results[0]}, server: #{server}"
    puts "IDs: results[0]: #{results[0].__id__}, server: #{server.__id__}"
    exit 1
  end
end
Run Code Online (Sandbox Code Playgroud)

这是我运行时得到的:

Something's wrong... results[0]: #<TCPSocket:0x33c390>, server: #<TCPSocket:0x33c390>
IDs: results[0]: 1695840, server: 1695990

我在Mac OS X上运行Ruby版本1.8.6.

$ …

ruby sockets select

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

javascript基本问题

在html文档中声明Javascript时.我们有3种方法可以做到这一点

  1. 脚本部分进入head标签
  2. 脚本部分进入body标签
  3. javascript是来自外部文件的引用

考虑哪一个在性能方面更快更有效?

谢谢

javascript performance

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

如何将带有转义字符的 C/C++ 字符串转换为普通(原始)字符串

函数原型将是:

string f (string s);
Run Code Online (Sandbox Code Playgroud)

或者

char* f (char* s);
Run Code Online (Sandbox Code Playgroud)

f 会将可打印的 ascii 字符表示的字符串转换为原始字符串。

它的行为与以下示例相同:

f("AAA") = "AAA"
f("AA\n") = "AA+line_feed"
Run Code Online (Sandbox Code Playgroud)

即输入字符串是 4 个字符长 (+ NULL),输出是 3 个字符长 (+NULL)。2 个可打印字符 '\' 'n'(输入字符串的最后 2 个字符)被一个 LF 字符(ascii 10)替换

f("\0x007") 返回包含字符 ascii 7 的长度为 1 的字符串

f("AA\nAA\tAA\07\n") 会将所有这些转义字符转换为它们的真实(每个转义序列 1 个字符)等价物。

这必须存在,至少 C 编译器/C 预处理器会这样做。

/C

c c++ escaping character

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

初始化Ruby对象中的属性

我创建了一个Spam类型的新对象,attr_accessor同时具有hooray和name,我有初始化方法.我期待当我创建一个新对象时,该对象加载了一个带有"Whammy"的var变量和一个名为hooray的空数组.虽然我没有得到这种行为.谁能解释一下,谢谢你提前.

module Test
class Spam
 attr_accessor :hooray, :name

 def initialize
    hooray = []
    name = "Whammy"
 end
end 
end

Loading development environment (Rails 3.0.0)
irb(main):001:0> require 'Test'
=> nil
irb(main):002:0> test = Test::Spam.new
=> #<Test::Spam:0x000000031ff470>
irb(main):003:0> test.name
=> nil
irb(main):004:0> test.hooray
=> nil
irb(main):005:0> test.hooray << 5
NoMethodError: You have a nil object when you didn't expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.<<
    from (irb):5
    from /usr/local/lib/ruby/gems/1.9.1/gems/railties-3.0.0/lib/rails/commands/console.rb:44:in `start'
    from /usr/local/lib/ruby/gems/1.9.1/gems/railties-3.0.0/lib/rails/commands/console.rb:8:in `start' …
Run Code Online (Sandbox Code Playgroud)

ruby arrays initialization

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

在C中使用USB(Windows)

这是在一篇文章中汇编的几个问题.

1)什么是判断USB大容量存储设备是否插入的最佳方式.

2)将数据写入USB驱动器的最佳方法是什么

3)你可以像在常规内存中那样处理usb驱动器上的内存..(我可以像malloc一样使用,或者直接使用值/和/或将其归零吗?)

c windows usb

0
推荐指数
1
解决办法
1263
查看次数

Git是否需要互联网连接才能在本地工作?

我是Git的新手,在我开始使用它之前尝试了解它.Git总是需要互联网才能在本地工作吗?

我用Google搜索并发现它可以在客户端 - 服务器模式下在本地计算机上运行.是否需要互联网连接才能在一台计算机上本地工作?

如果它不需要互联网连接,那么为什么我通过谷歌找到的指南告诉我在第一次设置Git时添加用户名和电子邮件地址?用户名我能理解,但为什么是电子邮件地址?

git

0
推荐指数
1
解决办法
3439
查看次数