小编Rod*_*des的帖子

如何在此示例中使用列表

可以说我有一个这样的数组(我知道在c#上是不可能的):

string[,] arr = new string[,]
{
    {"expensive", "costly", "pricy", 0},
    {"black", "dark", 0}
};
Run Code Online (Sandbox Code Playgroud)

那么如何在列表中添加这些项目以及如何在"pricy"0之间添加新项目?我在网上找不到任何例子.

c# arrays list

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

使用模板对象操作

免责声明我不允许使用BOOST或任何其他库,只能使用标准版.

在我的类中,Foo我有一个模板函数foo,它有两个参数:指向对象指针指向此对象成员函数指针.foo正如您所见,该函数适用于任何类的指针.我不知道,会传给哪一堂课.此函数创建模板结构的实例.

template <typename TypeName>
struct Bar
{
    void(TypeName::*action)();
    TypeName* objPtr;
};



template <typename TypeName> void Foo::foo ( void(TypeName::*action)() , TypeName* objPtr )
{
    Bar <TypeName> bar;
    bar.action = action;
    bar.objPtr = objPtr;
};
Run Code Online (Sandbox Code Playgroud)

我的问题是:如何存储Bar,创建的对象foo,以便稍后我可以迭代它们并调用指针到对象成员函数,如下所示:

(BarStorage[i].objPtr->*BarStorage[i].action)();
Run Code Online (Sandbox Code Playgroud)

c++ templates pointers function-pointers pointer-to-member

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

简要地刷一张照片

我正在尝试修改使用pyQt编写的程序(特别是Anki).我希望程序暂时闪存一张图片(存储为硬盘上的文件),然后继续正常运行.

此代码将插入程序中的任意位置.这是对现有程序的临时单用户补丁 - 它不需要快速或优雅或易于维护.

我的问题是我对pyQt知之甚少.我是否需要定义一个全新的"窗口",或者我可以运行某种带有图像的"通知"功能吗?

python pyqt

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

重写if else进入switch

我写了一些像这样的if-else语句:

   if (workedDays > 0 && workedDays <= 180)
   {
     x= 14;
   }

   if (workedDays > 180 && workedDays <= 540)
   {
     x= 28;
   }

   if (workedDays > 540 && workedDays <= 1068)
   {
     x= 42;
   }
   else
   {
     x= 56;
   }
Run Code Online (Sandbox Code Playgroud)

我试图将其重写为如下所示的switch语句:

   switch (workedDays)
   {
     case (workedDays > 0 && workedDays <= 180):
       x=14;
       break;
     default:
       break;
   }
Run Code Online (Sandbox Code Playgroud)

但是,我收到了错误Cannot implicitly convert type 'bool' to 'int'.

我该如何解决?

c# if-statement switch-statement

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

无法解决内存泄漏问题

我无法解决我的小程序中的内存泄漏问题.有些代码最初是用Java创建的,所以我把它"转换"成c ++(其中一些东西可能看起来很奇怪,所以如果你有更好的解决方案,请告诉我 - 对于C++中的OOP来说还是很新的).我的目的是创建一个随机高度图生成器.存在2个内存泄漏(可在Visual Leak Detector中找到):

第一个在这里被触发:

-> Mountain* mount = new Mountain(size, Utils::powerOf2Log2(size) - 6, 0.5f, seed);
   ChannelClass* height = mount->toChannel();
Run Code Online (Sandbox Code Playgroud)

因为在"Mountain"类构造函数中:

channel = new ChannelClass(size, size);
Run Code Online (Sandbox Code Playgroud)

我试图使用这样的关机方法:

mount->ShutDown();
delete mount;
mount = 0;
Run Code Online (Sandbox Code Playgroud)

使用Shutdown()定义如下:

if(channel){
    channel->ShutDown();
    delete channel;
    channel = 0;
}
Run Code Online (Sandbox Code Playgroud)

"ChannelClass"的ShutDown()方法正在删除一个float数组.我最初的想法是,"ChannelClass*height = mount-> toChannel()"可能会导致问题.

如果您需要更多代码,请告诉我们!提前感谢任何愿意提供帮助的人!

c++ memory-leaks

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

将double数组转换为list

包含多列数字的txt文件,每列保存在一个双数组中,我想要做的是获取特定列的平均值,但要做到这一点我必须将数组转换为列表然后开始计算.到目前为止我有这个代码:

  List<double> 1 = new List<double>(NumSepaERG);
  List<double> 12 = NumSepaERG.ToList();
Run Code Online (Sandbox Code Playgroud)

但我得到和无效表达术语双倍的错误

c# list

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

特定于子类的静态成员数据

我正在尝试实现一个类系列,这些类跟踪每个类存在多少个实例.因为所有这些类都有这种行为,所以我想把它拉成一个超类,所以我不必重复每个类的实现.请考虑以下代码:

class Base
{
    protected static int _instances=0;
    protected int _id;

    protected Base()
    {
        // I would really like to use the instances of this's class--not
        // specifically Base._instances
        this._id = Base._instances;
        Base._instances++;
    }
}

class Derived : Base
{
                                // Values below are desired,
                                // not actual:
    Derived d1 = new Derived(); // d1._id = 0
    Derived d2 = new Derived(); // d2._id = 1
    Derived d3 = new Derived(); // d3._id = 2

    public Derived() : base() { …
Run Code Online (Sandbox Code Playgroud)

c# inheritance static

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