问题列表 - 第21834页

为什么不能存储基类的函数指针?

以下代码给出了void b() { m = &A::a; };声明A::a()受保护的编译错误.(它是 - 但这应该没问题)
然而编译器在我写的时候并不关心B::a().即使两者都意味着我想要的相同,A::a()因为它明确表示a()在A中定义.

那么禁止的原因A::a()什么?
编辑
也许有人可以找到一个例子,如果A::a()允许的话会有问题B::b().如果有这样的例子,我会将其标记为问题的答案.
/编辑

#include <iostream>
#include <iomanip>
#include <string>
#include <cstdio>

class A {
protected:
  void a(){ std::cout << "A::a()" << std::endl; };
};

typedef void (A::*f)();
class B : public A {
public:
  void b() { m = &A::a; }; // wont compile
  // void b() { m = …
Run Code Online (Sandbox Code Playgroud)

c++ function-pointers

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

如何手动创建树形图(或"hclust")对象?(在R中)

我有一个树形图给我作为图像.由于它不是很大,我可以"手动"构建它到R对象中.

所以我的问题是如何手动创建一个树形图(或"hclust")对象,当我所有的是树形图像?

我看到有一个叫做"as.dendrogram"的函数但是我无法找到如何使用它的例子.

(PS:这篇文章是由以下我的问题在这里)

非常感谢,Tal

r cluster-analysis dendrogram

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

为什么我从NSData读取字节时会得到不同的值,具体取决于我获取字节的顺序?

好吧,这更像是"到底是怎么回事?" 而不是一个实际问题.但鉴于我对C的相对缺乏经验,它可能会导致更大的问题.

基本上,我正在解析wav文件的标题并获取值.在我的头文件中,我定义了类变量:

short channels;
int sampleRate;
int bytesPerSecond;
short bytesPerSample;
short bitsPerSample;
unsigned int size;  
Run Code Online (Sandbox Code Playgroud)

并且类中用于获取这些值的函数如下:

NSData * fileData = [[NSData alloc] initWithContentsOfFile:filePath];
[fileData getBytes:&channels range:CHANNELS_R];
[fileData getBytes:&sampleRate range:SAMPLES_R];
[fileData getBytes:&bytesPerSecond range:BYTES_PER_SEC_R];
[fileData getBytes:&bytesPerSample range:BYTES_PER_SAMPLE_R];
[fileData getBytes:&bitsPerSample range:BITS_PER_SAMPLE_R];
[fileData getBytes:&size range:LENGTH_R];
Run Code Online (Sandbox Code Playgroud)

范围先前定义:

const NSRange CHANNELS_R = {22,23};
const NSRange SAMPLES_R = {24,27};
const NSRange BYTES_PER_SEC_R = {28,31};
const NSRange BYTES_PER_SAMPLE_R = {32,33};
const NSRange BITS_PER_SAMPLE_R = {34,35};
const NSRange LENGTH_R = {40,43};
Run Code Online (Sandbox Code Playgroud)

这工作正常,我得到所有的值,但是,如果我按顺序移动其中一行,或者在标题中的一个变量定义,它们会得到一个完全不同的值.例如,我正在进行的测试wav的采样率为8000.使用上面的代码我得到了正确的值.但是如果我移动指定它的值超过通道线的值,我得到524288000.太棒了.基本上,如果给出变量的顺序,它们的值与它们的定义顺序不对应,那就会混淆它.范围似乎对此行为没有任何影响.

任何人都知道这里发生了什么?

cocoa objective-c nsdata

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

SXXP0003:XML 解析器报告的错误:序言中不允许有内容

我的 XML 文件是

<?xml version="1.0" encoding="ISO-8859-1"?>
<T0020
    xsi:schemaLocation="http://www.safersys.org/namespaces/T0020V1 T0020V1.xsd"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.safersys.org/namespaces/T0020V1">
    <INTERFACE>
        <NAME>SAFER</NAME>
        <VERSION>04.02</VERSION>
    </INTERFACE>
    <TRANSACTION>
        <VERSION>01.00</VERSION>
        <OPERATION>REPLACE</OPERATION>
        <DATE_TIME>2009-09-01T00:00:00</DATE_TIME>
        <TZ>CT</TZ>
    </TRANSACTION>
    <IRP_ACCOUNT>
        <IRP_CARRIER_ID_NUMBER>564182</IRP_CARRIER_ID_NUMBER>
        <IRP_BASE_COUNTRY>US</IRP_BASE_COUNTRY>
        <IRP_BASE_STATE>AR</IRP_BASE_STATE>
        <IRP_ACCOUNT_NUMBER>67432</IRP_ACCOUNT_NUMBER>
        <IRP_ACCOUNT_TYPE>I</IRP_ACCOUNT_TYPE>
        <IRP_STATUS_CODE>100</IRP_STATUS_CODE>
        <IRP_STATUS_DATE>2008-02-01</IRP_STATUS_DATE>
        <IRP_UPDATE_DATE>2009-06-18</IRP_UPDATE_DATE>
        <IRP_NAME>
            <NAME_TYPE>LG</NAME_TYPE>
            <NAME>LARRY SHADDON</NAME>
            <IRP_ADDRESS>
                <ADDRESS_TYPE>PH</ADDRESS_TYPE>
                <STREET_LINE_1>10291 HWY 124</STREET_LINE_1>
                <STREET_LINE_2/>
                <CITY>RUSSELLVILLE</CITY>
                <STATE>AR</STATE>
                <ZIP_CODE>72802</ZIP_CODE>
                <COUNTY>POPE</COUNTY>
                <COLONIA/>
                <COUNTRY>US</COUNTRY>
            </IRP_ADDRESS>
            <IRP_ADDRESS>
                <ADDRESS_TYPE>MA</ADDRESS_TYPE>
                <STREET_LINE_1>10291 HWY124</STREET_LINE_1>
                <STREET_LINE_2/>
                <CITY>RUSSELLVILLE</CITY>
                <STATE>AR</STATE>
                <ZIP_CODE>72802</ZIP_CODE>
                <COUNTY>POPE</COUNTY>
                <COLONIA/>
                <COUNTRY>US</COUNTRY>
            </IRP_ADDRESS>
        </IRP_NAME>
    </IRP_ACCOUNT>
</T0020>
Run Code Online (Sandbox Code Playgroud)

我正在使用以下 XSLT 将我的 xml 文件拆分为多个 xml 文件。

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:t="http://www.safersys.org/namespaces/T0020V1" version="2.0">
 <xsl:output method="xml" indent="yes" name="xml" /> 
 <xsl:variable name="accounts" …
Run Code Online (Sandbox Code Playgroud)

java xml xslt spring

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

从C++字符串中删除最后一个字符

如何从C++字符串中删除最后一个字符?

我试过st = substr(st.length()-1);但它没用.

c++ string substring

195
推荐指数
7
解决办法
27万
查看次数

C#将var name命名为string

问候,你能帮忙吗?我需要以字符串格式获取变量(名称).例如下面我需要将"test"显示为字符串.

        int test = 69;
        //below does not work
        MessageBox.Show((string)test);
        // below works but displays the int value
        MessageBox.Show(test.ToString());
Run Code Online (Sandbox Code Playgroud)

感谢您的时间.

我有一个枚举:

    public enum ShipOrientation
    {
        North,
        East,
        South,
        West
    }
Run Code Online (Sandbox Code Playgroud)

我根据方向进行一些处理,如果是int,则应用enum North方向.

c#

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

我可以在C#中使用未知类型的参数声明方法来创建接口或抽象类吗?

我正在将http GET查询字符串解析为其组件.在尝试使其模块化(参数的数量和类型可以变化很大)时,我希望有一个参数抽象基类或接口来定义是否已设置属性,以及设置方法的Set方法值.有没有办法用Set方法的变量参数类型做到这一点?

总体思路如下:

public abstract class Parameter
{
    public bool IsSet { get; protected set; }
    protected Parameter() { IsSet = false; }
    public abstract void Set( --unknown type here-- );
}
Run Code Online (Sandbox Code Playgroud)

一个示例参数子将是这样的:

public class IntParameter : Parameter
{
    public int Value { get; protected set; }
    public void Set(int value)
    {
        Value = value;
        IsSet = true;
    }
}
Run Code Online (Sandbox Code Playgroud)

通过这种结构,我可以将每个查询参数抛入其适当的强类型类中,但仍然确保所有这些都是一致的.IsSet属性的原因是能够检查参数是否已设置,因为某些参数没有任何"安全"值,我肯定不会故意传递这些值.如果未设置值,则会获得一个默认值.

看看这个问题,我怀疑它是否可以像我想要实现它那样处理,但是这个例子应该能够了解我希望能够做到的事情.

有没有关于如何最好地处理它的建议.如果有一个方便的设计模式或常见的方式,我不会感到惊讶,但我没有设法谷歌一个.

我看到的选项是:

  • 不要使用继承并依赖约定来保持一致性.我很可能不需要通过列表迭代等处理这些,但如果我找到了一种方法,它可能会打开一些新的想法或机会.
  • 使用一个object参数,然后以某种方式做一些typeof()和切换魔法,虽然这让我感到非常难看,而且非多态,可以这么说.

还有其他想法吗?:)

c# inheritance abstract-class interface

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

字符串中的最大字符数

字符串中是否允许使用最大字符数?如果是这样,字符数限制是多少?

c++

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

什么是"monadic反射"?

什么是"monadic反射"?

如何在F#程序中使用它?

术语"反射"的含义是否与.NET反射相同?

f#

14
推荐指数
2
解决办法
1194
查看次数

Jquery:从两个元素连接值

有点卡住尝试在Jquery中实现某些东西,并想知道是否有人可以协助..

我正在创建我自己的编辑就地功能,您可以在其中单击编辑按钮,我的定义列表的内容将被替换为表格...预填充数据.与类似

一切都很好,除了每个可编辑部分(用户注释)被标记,并且可以有多个标签,就像在stackoverflow上这样...所以我的HTML输出每个评论的标签是这样的

 <dl id='comment_id'>
  <dt class="comment title">#i.getsTitle()#</a></dt>
           // Other info
    <dd class="categories">
        <dl>
      <dt>Tags:</dt>
    <cfloop array="#i.getCategory()#" index="ii">
     <dd class="category"><a href="">#ii.getsCategory()#</a></dd>
 </cfloop>
  </dl>
   </dd>
Run Code Online (Sandbox Code Playgroud)

所以我将我的类别或标签嵌套在一个由循环控制的定义列表中.

到目前为止我尝试做的是使用Jquery获取这些catergories的内容,这样当你点击编辑时,类别表单字段将预先填充该评论的现有标签....

$('.edit').click(function(){
  // Grab the text for all categories
 var sCategory = $(this).parents('dl').find('dd.categories dl dd.category').text();

 //Build a form and prefill the category form field with the sCategory Variable
 form + '' // Other Data to build form 
 form += '<dl><input name="sCategory" type="text" value="' + sCategory + '" /></dl>'

 // Show edit form prefilled …
Run Code Online (Sandbox Code Playgroud)

jquery

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