问题列表 - 第29376页

为什么C++分配器中没有重新分配功能?

在C中,标准内存处理函数是malloc(),realloc()free().但是,C++ stdlib分配器只兼容其中两个:没有重新分配功能.当然,不可能完全相同realloc(),因为简单地复制内存不适合非聚合类型.但是,这个函数是否会出现问题:

bool reallocate (pointer ptr, size_type num_now, size_type num_requested);
Run Code Online (Sandbox Code Playgroud)

哪里

  • ptr先前为num_now对象分配了相同的分配器;
  • num_requested> = num_now;

和语义如下:

  • 如果分配器可以ptr从给定num_now对象的大小扩展给定的内存块num_requested,它会这样做(留下额外的内存未初始化)并返回true;
  • 否则它什么都不做并返回false.

当然,这不是很简单,但据我所知,分配器主要用于容器和容器的代码通常很复杂.

给定这样的函数,std::vector比如说,可以增长如下(伪代码):

if (allocator.reallocate (buffer, capacity, new_capacity))
  capacity = new_capacity;     // That's all we need to do
else
  ...   // Do the standard reallocation by using a different buffer,
        // copying data and freeing the current one …
Run Code Online (Sandbox Code Playgroud)

c++ memory-management realloc

33
推荐指数
3
解决办法
3829
查看次数

是否可以从scala中的函数中恢复函数的名称?

我想做点什么

def getMeASammy() {println "getMeASammy"}
def getMeADrink() {println "getMeADrink"}
def getMeASub() {println "getMeASub"}
Run Code Online (Sandbox Code Playgroud)

但是,我不想明确键入函数的名称.

scala inspection

24
推荐指数
4
解决办法
5087
查看次数

Literal与字符串列上的Oracle SQL to_date的格式字符串不匹配

亲爱的来自Stack Overflow的SQL专家:

环境: Oracle

我试图理解为什么我不能对包含字符串的表列进行to_date选择.注意下面示例中带有名称值Value的tableZ包含一串字符串,其中一些是正确的格式,例如6/20/2010 00:00:00.

tableZ

| Value              |
| __________________ |
| 6/21/2010 00:00:00 |
| Somestring         |
| Some Other strings |
| 6/21/2010 00:00:00 |
| 6/22/2010 00:00:00 |
Run Code Online (Sandbox Code Playgroud)

以下作品

SELECT To_Date(c.Value, 'MM/DD/YYYY HH24:MI:SS') somedate 
          FROM tableX a, tableY b, tableZ c 
         WHERE Lower(a.name) = 'somedate' 
           AND a.id = b.other_id 
           AND b.id = c.new_id
Run Code Online (Sandbox Code Playgroud)

这会返回类似的内容(这很好):

| somedate            |
| __________________  |
| 21.06.2010 00:00:00 |
| 21.06.2010 00:00:00 |
| 22.06.2010 00:00:00 |
Run Code Online (Sandbox Code Playgroud)

以下不起作用

SELECT To_Date(c.Value, …
Run Code Online (Sandbox Code Playgroud)

sql oracle datetime to-date

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

如何在存储过程中将列作为参数传递?

如何传递和使用列名来检索实际列中的bigint变量?

DECLARE @personID BIGINT,
DECLARE @queryString varchar(500)

Set @queryString = 'Select @personID = ' + @PersonColumnID + ' from dbo.Loss_Witness where WitnessID = @witnessID'
exec(@queryString)
Run Code Online (Sandbox Code Playgroud)

错误消息指出"必须声明变量'@personID'." 我也试过了

Set @queryString = 'Select ' + @personID + ' = ' + @witnessPersonID + ' from dbo.Loss_Witness where WitnessID = @witnessID'
Run Code Online (Sandbox Code Playgroud)

并收到错误消息"将数据类型varchar转换为bigint时出错".

有什么想法吗?

sql t-sql sql-server sql-server-2005 dynamic-sql

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

使用Matlab将字符串写入excel?

我正在从Matlab写一个字符串的单元格数组到Excel中.我有一个单元数组数据{},我试图写入Matlab.因为strcmp经过3次,它应该写出三个很长的字符串才能表现出色.目前它只是将最后一组字符串写入excel.data = {{1x25} {1x35} {1x20}}看起来像这样.此外,我希望能够将数据写入三个单元格,而不是复制到与单元格数组元素中的行一样多的单元格.这可以与Matlab一起表现出色吗?

done = {}

for i = 1:3
   q = strcmp(x_gene_ID{i},locus_tags{i});
   if q ==1
       done{end+1} = data{i};
       disp(done);

   end


end


w = xlswrite('data.xlsx',done','E2:E400');
Run Code Online (Sandbox Code Playgroud)

好吧,这有助于我知道单元阵列大于3个单元格范围.我试图让Nx1单元阵列适合Excel中的一个单元格,因为它需要与相邻单元格中的信息相对应.这有可能吗?

A     B      C        D                   E  
w   Rv0146  na  Rv0039c (i want the cell array1 to go here)
s   Rv0156  na  Rv0029c (i want the cell array2 to go here)
s   Rv0156  na  Rv0029c (i want the cell array2 to go here)
Run Code Online (Sandbox Code Playgroud)

这是我在excel中要做的事情

string excel matlab

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

如何比较SQL Server中的日期时间类型

所以我在SQL Server上的数据库中有一个日期时间列.我想做这个简单的select语句:

SELECT *
FROM Res
Where dateSubmit='6/17/2010 5:01:26 PM'
Run Code Online (Sandbox Code Playgroud)

dateSubmit 是一个日期时间数据类型,我的数据库有一行,其中dateSubmit是6/17/2010 5:01:26 PM

但是,当我执行此语句时,它返回null.

sql-server datetime

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

Memcached的LRU实际意味着什么?

Memcached说它使用一个LRU队列进行驱逐(有一些基于平板大小混合的规则.)当他们说最近最少使用时,他们是指最近最少存储或最近读取的?他们的文件似乎含糊不清.

memcached lru

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

在游标中找到输出值到logcat? - Android

我正试图自己调试一个问题.如果我失败,可以稍后发布;-)

我的logcat日志说明 "android.database.CursorIndexOutOfBoundsException: Index -1 requested, with a size of 2"

我想log.v("desc", cursor)用来显示游标返回的内容.有没有办法像游标[0]那样指定一个值?

database android cursor

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

Ruby on Rails十进制列

如果将ActiveRecord列类型指定为十进制,则Rails会将该数据库值作为ruby BigDecimal对象返回.

我的问题是,当使用这些字段并对它们执行额外的数学运算时,我是否应该在计算中始终使用BigDecimal值,或者可以使用浮点值.我不知道在同一计算中混合BigDecimal值和浮点值是否是一个好习惯.

混合示例:BigDecimal.new('12 .43')/ 4.2

相同类型示例:BigDecimal.new('12 .43')/ BigDecimal.new('4.2')

我问的原因是因为我需要使用浮点数,因为我需要十进制精度.使用浮点数0.1 + 0.7不等于0.8.

ruby-on-rails bigdecimal

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

LINQ to Objects List的区别

我有两个EmailAddress通用列表,我想要一个简单的方法来获取List1中不在List2中的所有EmailAddress对象.

我正在考虑与Linq进行某种类型的左外连接,但我对如何设置它有点困惑.我也愿意接受更好的解决方案.

更新:我应该注意到这些是我的"EmailAddress"对象的自定义数据类型列表.

c# linq

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