小编Jas*_*son的帖子

设置BigDecimal的特定精度

我有一个XSD,要求我使用BigDecimal作为lat/lon.我目前将lat/lon作为双精度,并将它们转换为BigDecimal,但我只需要使用大约12个精度位置.我无法弄清楚如何设置它.谁能帮我这个?

java bigdecimal floating-point-precision

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

将工具提示添加到CStatic

我无法找到一个简洁的代码块,允许我向CStatic(和CLed)控件添加/显示工具提示.显然,这样做的标准代码不适用于这种类型的控制.有人可以发布代码片段吗?

mfc static tooltip

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

C#UDP广播和接收示例

问题:我试图在特定地址绑定一个udp套接字.我会播出一条消息.同一个套接字需要能够接收消息.

当前代码:

static void Main()
{
    UdpClient Configuration = new UdpClient(new IPEndPoint(IPAddress.Parse(data.IPAddress), configuration.Port));  //set up the bind to the local IP address of my choosing
    ConfigurationServer.EnableBroadcast = true;
    Configuration.Connect(new IPEndpoint(IPAddress.Parse(data.BroadcastIP), configuration.Port);
    Listen();

 }

private void Listen()
{
    Task.Run(async () =>
            {
                while (true)
                {
                    var remoteIp = new IPEndPoint(IPAddress.Any, configuration.Port);
                    var data = await ConfigurationServer.ReceiveAsync();

                    // i would send based on what data i received here
                    int j = 32;
                }
            }
});
}   
Run Code Online (Sandbox Code Playgroud)

我没有收到有关侦听线程的数据.我知道另一方的代码是有用的,并且向IP /端口组合发送定向UDP消息.

c# udp

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

使用指针访问std :: map中的值是明智的吗?

将指针从a返回std::map::find到数据并使用它而不是获取数据副本是危险的吗?

目前,我得到一个指向我的地图中的条目的指针,并将其传递给另一个函数来显示数据.我担心项目移动导致指针变为无效.这是一个合法的问题吗?

这是我的示例函数:

MyStruct* StructManagementClass::GetStructPtr(int structId)

{
    std::map<int, MyStruct>::iterator foundStruct;
    foundStruct= myStructList.find(structId);
    if (foundStruct== myStructList.end())
    {
        MyStruct newStruct;
        memset(&newStruct, 0, sizeof(MyStruct));
        myStructList.structId= structId;
        myStructList.insert(pair<int, MyStruct>(structId, newStruct));

       foundStruct= myStructList.find(structId);
   }

   return (MyStruct*) &foundStruct->second;
Run Code Online (Sandbox Code Playgroud)

}

c++ pointers stdmap

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

app.config dependentAssembly不工作

我想直接链接到编译/运行时使用的Dll.我的程序布局是这样的:Console Exe启动一个winform dll.该DLL使用一堆dll来执行.Appconfig位于winform dll的项目中.基于一些阅读,winform dll是否正在寻找错误的app.config?我打算使用Assembly.LoadFrom()执行我的dll;

我创建了一个app.config文件,并在该部分中添加了以下行

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
            <assemblyIdentity name="CommonConversions"
                              publicKeyToken="null"
                              culture="neutral" />
            <codeBase version="1.0.0.0"
                      href="file://C://BMS_ACTD//bin//DX//Globals//CommonConversions.dll"/>
        </dependentAssembly>
        <dependentAssembly>
            <assemblyIdentity name="GlobalConstants"
                              publicKeyToken="null"
                              culture="neutral" />
            <codeBase version="1.0.0.0"
                      href="file://C://BMS_ACTD//bin//DX//Globals//GlobalConstants.dll"/>
        </dependentAssembly>
        <dependentAssembly>
            <assemblyIdentity name="MessageInstance"
                              publicKeyToken="null"
                              culture="neutral" />
            <codeBase version="1.0.0.0"
                      href="file://C://BMS_ACTD//bin//DX//Globals//MessageInstance.dll"/>
        </dependentAssembly>
        <dependentAssembly>
            <assemblyIdentity name="MessageInterface"
                              publicKeyToken="null"
                              culture="neutral" />
            <codeBase version="1.0.0.0"
                      href="file://C://BMS_ACTD//bin//DX//Globals//MessageInterface.dll"/>
        </dependentAssembly>
        <dependentAssembly>
            <assemblyIdentity name="ToolsInterface"
                              publicKeyToken="null"
                              culture="neutral" />
            <codeBase version="1.0.0.0"
                      href="file://C://BMS_ACTD//bin//DX//Globals//ToolsInterface.dll"/>
        </dependentAssembly>
    </assemblyBinding>
</runtime>
Run Code Online (Sandbox Code Playgroud)

位置绝对正确.dll没有强名称,因此publicKeyToken ="null".我的所有版本都是1.0.0.0.当我查看我引用的dll的属性时,文化是空白的.我也应该这样吗?有什么看起来我做错了吗?

c# app-config

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

哪种visual studio解决方案类型适合我?

我目前有一个我写的程序,分为3个独立的解决方案.

  1. 前端(所有显示相关的东西)
  2. 解析器(多个(39)项目,每个项目创建一个dll来解析特定数据)
  3. Globals(多个(5)项目,每个项目创建一个由解析器解决方案中的项目使用的dll,以及前端).

要求 -

  • 前端和解析器都要求全局dll在编译时存在,并在运行时使用.
  • 使用assembly.LoadReference在运行时加载Parsers dll.
  • 发展是: C:\projects\myProg
  • 部署位置是: C:\myProg

我的问题是我一直在处理与项目依赖关系有关的问题,在哪里指向我的全局变量dll.我是否指向已部署的位置或开发位置,如果是,则发布或调试?

所以我开始查找不同的解决方案类型,我想知道是否应该为我的特定情况设置分区解决方案或多解决方案.

c# projects-and-solutions visual-studio-2010

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

std :: map - 擦除最后一个元素

我的地图定义如下: map<string, LocationStruct> myLocations;其中键是时间字符串

我只在此地图中保留了40个项目,并且当我达到40个项目时,我想放弃地图中的最后一个项目.我知道我做不到myLocations.erase(myLocations.end()),所以我该怎么做呢?

我打算让地图中的最后一项成为最早的项目,因此也是FIFO.数据会很快(大约20Hz)进来,所以我希望地图可以跟上它.我确实需要根据时间查找数据,所以我确实需要它作为关键,但我愿意采用其他方法来实现这一点.

字符串的格式是一个非常详细的"星期六6月21日星期四18:44:21:281",虽然我可以把它简化为简单时代以来的秒数.这是我的第一次尝试,并没有过多考虑格式.

c++ stl map erase

6
推荐指数
3
解决办法
9050
查看次数

VS2019 C++跨平台程序中包含nuget包

我的任务是开始使用 CMake 布置 C++ 跨平台程序。我们的主要依赖项之一涉及内部 nuget 包。对于我们的 Windows C++ 项目,我只需右键单击该项目并选择Manage Nuget Packages。在跨平台中,没有这样的选项,我正在努力寻找有关如何包含这些依赖项的任何相关信息。任何人都可以将我链接到任何好的信息来源或演示吗?

c++ linux windows cmake nuget

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

使用linq查询查找与先前找到的值不同的值

假设我有一个类,其中包含可通过属性公开访问的这些项:

class MyClass
{    
    int switch1; //0 or 1
    int switch2; //0 or 1
    int switch3; //0 or 1
}
Run Code Online (Sandbox Code Playgroud)

此类表示切换状态,每次切换状态更改时,我都想将其添加到转换列表中

我有一个大的排序列表,其中包含此类的实例,并希望使用查询仅捕获列表中任何开关的开关状态更改的条目.

这可能使用linq查询吗?

c# linq sortedlist

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

2次跨度之间的时差无法返回预期数据

我在下面创建了2个时间跨度:

TimeSpan currentTs = TimeSpan.FromSeconds(43995); //12:13:15
TimeSpan towTime = TimeSpan.FromSeconds(303072); //12:11:12
Run Code Online (Sandbox Code Playgroud)

我试图找到以分钟为单位的差异(经过我传递的秒数,看来它们是在不同的日子)。我希望相差2分钟左右,但实际上,我得到-57分钟。

int timeDifference = (int)currentTs.Subtract(towTime).Minutes;
Run Code Online (Sandbox Code Playgroud)

有人可以解释我在做什么错吗?

c# timespan

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

Java编译器错误:查找表超过65535限制

由于基于此定义的极大查找表,我遇到了这个编译器错误:

//92 X 182 array
private static final double[][] lookUpTable = new double[][]
{
    { numbers....}
};
Run Code Online (Sandbox Code Playgroud)

据我所知,将其分解是一种解决方案,但要准确地分割这个阵列是非常困难的.我也相信我可以把它移到一个文件,但我不知道我是否可以用一种方式来帮助我格式化,而且我不想每秒都读取文件.还有其他建议可以帮助我解决这个问题吗?

java lookup-tables

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

ArrayList vs char [].这对于构建成大字符串最有效

我正在逐字节地读取数据.当我确定我有一个完整的消息时,我需要将它作为字符串传递给另一个函数.有些消息可能非常大,但大小经常变化.您觉得哪种实现最有效:

public test class
{
   char[] buffer = new char[MAX_SIZE_7200];
   int bufferIndex = 0;
   void parseData(ArrayList<Byte> msg, length)
   {
       while (!msg.isEmpty())
       {
          buffer[bufferIndex++] = (char) msg.remove(0);
          if (isfullmessage)
          {
             parseData(new String(buffer, 0, bufferIndex);
             bufferIndex = 0;  //restart and continue parsing data
          }
       }
   }
 }
Run Code Online (Sandbox Code Playgroud)

要么:

public test class
{
   List<Character> buffer = new ArrayList<Character>();
   int bufferIndex = 0;
   void parseData(ArrayList<Byte> msg, length)
   {
       while (!msg.isEmpty())
       {
          buffer.add((char) msg.remove(0));
          if (isfullmessage)
          {
              StringBuilder builder = new StringBuilder(buffer.size());
              for (Character ch: …
Run Code Online (Sandbox Code Playgroud)

java performance parsing arraylist character-arrays

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